DataFrame

kimx1201·2021년 1월 16일
0

TIC : Today I Confused

목록 보기
2/10
  1. NaN의 data type 항상 float
    NaN : Not a number
    Na : Not available
    Null: 값이 없음.

df.loc[2, '해파리'] = np.nan #2번째 행의 '해파리'칼럼 Nan 값으로

#해당 결측치에 평균값을 넣으려면?

df_mean = df['해파리'].mean() #우션 평균값 구하기
df['해파리)'].fillna(df_mean, inplace = True) 

#평균값으로 fill

#inplace 에 True를 지정하면 또 다른 객체를 반환하지 않고 기존 객체 수정.
  1. 파일이름. dropna(axis='칼럼이나 인덱스')
    : 결측치가 있는 행이나 열을 드랍 할 수 있음.

  2. 칼럼 생성하기

df = pd.DataFrame({'col one':[100, 200], 'col two':[300, 400]})
  1. 칼럼 이름 바꾸기
df = df.rename({'col one':'col_one', 'col two':'col_two'}, axis='columns')
  1. 칼럼 사이에 스페이스 없어지게 만들기
df.columns = df.columns.str.replace(' ', '_')
  1. 데이터 타입 변환하기
df.astype({'col_one':'float', 'col_two':'float'}).dtypes
col_one      float64
col_two      float64
col_three     object
dtype: object

3번째 칼럼을 to_numeric() 을 사용해NaN 으로 바꿀 수 있음.

pd.to_numeric(df.col_three, errors='coerce')
0    7.7
1    8.8
2    NaN
Name: col_three, dtype: float64

그 후 fillna() method를 사용해 NaN 값을 0으로 전환

pd.to_numeric(df.col_three, errors='coerce').fillna(0)
0    7.7
1    8.8
2    0.0
Name: col_three, dtype: float64

이 결과를 전체 데이터 프레임에 적용하려면 apply()를 사용한다.

df = df.apply(pd.to_numeric, errors='coerce').fillna(0)
df
  1. 데이터 2개의 파트로 쪼개기
movies_1 = movies.sample(frac=0.75, random_state=1234)

영화데이터(movies)를 불러온 후 movies_1 은 전체 파일에셔 75%를 랜덤하게 선택해서 만든다. 나머지 데이터는 movies_2로 생성.

movies_2 = movies.drop(movies_1.index)

위의 내용은 'My top 25 pandas tricks' 유튜브 영상에서 가져왔습니다.

영상 내용 주피터 노트북.

profile
Lifelong learner, dreamy data analyst, cat lover and enthusiastic runner :)

0개의 댓글