인프런 커뮤니티 질문&답변
iris.data 질문 드립니다.
작성
·
226
0
iris.data 를 반환하면 feature 만으로 된 데이터를 numpy로 가지고 있다고 하는데 위에서 어떤 함수를 적용해주었기 때문에 feature만으로된 데이터를 가지고 있을 수 있는것인가요?
문법상으로는 모든 데이터를 가져와야 할 것 같은데 헷갈리네요..
답변 1
1
음... 질문 내용을 이해하지 못했습니다.
전체 코드를 적어 주시면 좋겠습니다만...
일단 적어주신 내용을 유추해서 답변 드려보자면,,
iris = load_iris() 와 같은 형태로 반환되는 iris 객체변수는 붓꽃 데이터 세트에 대한 여러가지 데이터들을 가지게 됩니다.
그러니까, iris는 여러가지 속성들을 가지게 되는데 예를 들어
iris.data는 붓꽃 데이터 세트의 feature 들을 numpy array로 가지게 됩니다.
iris.target은 타겟 데이터들을 numpy로 가지게 됩니다.
load_iris() 수행 시 반환되는 값이 그렇게 설정되도록 만들어져 있습니다.
load_iris() 함수를 호출하면 반환을 Bunch 객체로 하는데 그걸 iris 변수로 받은 겁니다.
그런데, iris 내에는 feature만 가지는 속성, target만 가지는 속성이 있습니다. feature만 가지는 속성을 iris.data로, target만 가지는 속성을 iris.target으로 할당된것입니다.
실무에서는 별도의 함수가 없습니다. load_iris()는 개발 테스트용으로 데이터를 만들라고 사이킷런에서 만든 것입니다. 실무에서는 csv같은 파일이나 db에서 데이터를 가져옵니다.






사이킷런 안에 내재되어있는 데이터상으로
load_iris는 feature만, iris.target는 target 데이터만 가지고 있다는 말씀이신건가요?
실무에서 데이터를 추출 할 때, 위와 같이 feature 데이터와 target 데이터를 나눠서 불러와야 하는건지, 데이터를 불러온 뒤 feature와 target 데이터로 나눌 수 있는 함수가 있는지 궁금합니다.