Dataframe 원하는 column만 선택하기 (4:32)
- []를 이용해서 column 추출, [] 안의 parameter는 column의 이름. 없으면 exception 발생
- 컬럼 인덱스 경우, 인덱스 리스트 사용가능 , train_data[['Survived', 'Age', 'something..']]
- train_data['Suvived'] (return type이 Series) vs train_data[['Survived']] (return type이 dataframe)
Dataframe 원하는 row(데이터)만 선택하기(8:08)
dataframe slicing
- []가 column 선택에 사용,
- but, slicing은 row level 지원됨
row 선택하기
- loc, iloc으로 row 선택가능, column 동시 선택가능
- loc : 인덱스 자체를 사용
- iloc : 0 based index로 사용
train_datda.index = np.arange(100,105)
train_data.loc[986]
train_data.loc[[986,199,100,101]] // list형태로 원하는 row 넘겨줌
train_data.iloc[[0,100,200,999]] // 0 based index 제공함
// column 동시 선택하기
train_dadta.loc[[0,100,200,300],['Survived', 'Name', 'Sex', 'Age']]
==> []는 column 선택에 사용, row 선택에는 loc / iloc 사용, loc / iloc 는 column 동시사용 가능함
DataFrame boolean selection으로 데이터 선택하기(3:46)
조건에 맞는 row만 dataframe에서 selection 하기
30대이면서 1등석에 탄 사람 선택하기
class_ = train_data['Pclass'] == 1
age_ = (train_data['Age']>=30) & (train_data['Age'] < 40)
train_data[class_ & age_]
DataFrame에 column 추가 삭제하기(7:57)
- 삭제 : drop, list 이용 multi 삭제 가능
// Series에 scalar 2를 곱해서 Age_double column에 매핑한다
train_data['Age_double'] = train_datda['Age'] * 2
// age_double + age
train_data['Age_triple'] = train_datda['Age_double'] + train_data['Age']
// 새로 추가되는 column은 dataframe의 가장 뒤에 insert 됨
// insert 함수 사용
train_data.insert(3, 'Fare10', train_data)
// column 삭제하기
d_return = train_data.drop('Age_triple', axis=1)
// 리스트로 column 삭제하기, inplace: 복사본을 만들지 안 만들지 결정함
list_d_return = train_data.drop(['Age_triple','Age'], axis=1, inplace=True)
학습 후