pd.read_csv('파일명' index=False)
df.to_csv('파일명', index=False)
data = df.copy()
data
data = data.drop('column name', axis=1) #data 변수에 저장하는 것 잊지 않기
data = df.copy() # 다시 호출, 데이터 초기화
data = data.drop(columns=['컬럼 명','칼럼 명2'...]) # 해당 컬럼 삭제 (여러 컬럼 삭제 가능)
data.drop('인덱스 명',axis=0)
data.drop('인덱스 명',axis=0, inplace=True)
cond = data['컬럼명'] >= 14000
data[cond].index # 인덱스 뽑아 내기
data.drop(data[cond],index, axis=0, inplace=True) # 위에서 뽑아낸 인덱스 행 삭제하기
data.dropna(axis=0)
data.dropna(axis=1)
df.innull().sum() # 결측치 존재 여부 확인(False=0,True=1), sum()으로 합계
df['컬럼 명'].fillna('알 수 없음') # 해당 컬럼명에 '알 수 없음'으로 채우기
df['칼럼 명'] = df['컬럼 명'].fillna('채울 값')
df.sort_index(ascending=Fasle) # ascending=True 디폴트 값, False는 내림차순
df.sort_values('컬럼 명', ascending=False) # 컬럼 명 기준으로 내림차순 정렬
df.sort_values(['컬럼 명', '컬럼 명2'], ascending=[False,True]) # 컬럼 명 내림차순/컬럼명 2는 오름차순
df.reset_index(drop=True) # 새로운 인덱스 값이 순차적으로 출력, drop=True로 기존 인덱스 삭제
df.info() # str은 object, 숫자는 int, float
df['호수'] = df['호수'].str.replace('호','') # '호수'에서 '호'를 ''로 변환
df['호수'] = df['호수'].astype(int)
- int형으로 변환하면 산술이 가능하다!
df['호수'].mean()
df.shape
df.info()
df.describe() # int, float 형만 확인
df.describe(include='0')
df.corr()
df.nunique()
df['컬럼 명'].unique()
df['컬럼 명'].value_counts()
df.count(axis=1) # 카운트 행
len(df)
df.shape[0] # 행 값만 찾을때 [0]
df['컬럼 명'].max()
df['컬럼 명'].min()
df['컬럼 명'].mean()
df['컬럼 명'].median()
df['컬럼 명'].sum()
df['컬럼 명'].std()
df['컬럼 명'].var()
df['컬럼 명'].quantile(.25) # 하위 25%의 값
df['컬럼 명'].quantile(.75). # 상위 25%의 값
조건이 있는 경우 (cond 변수 사용, 조건 : 상위 25%, 하위 25% 값)
cond = df['컬럼 명'].quantile(.25) > df['컬럼 명'] # 하위 25%들의 값
df[cond]
cond = df['컬럼 명'].quantile(.75) < df['컬럼 명'] # 상위 25%들의 값
df['컬럼 명'].mode()[0]
df.T
df.groupby('기준 컬럼명').mean()
df.groupby(['컬럼명','컬럼명2']).mean() # 리스트 씌우는 것 잊지 않기, 컬럼명 1부터 기준으로 구함
df.groupby(['컬럼명','컬럼명2'])['특정 컬럼명'].mean() # 시리즈 형태로 출력 된다
- 데이터 프레임 형태로 출력하고 싶을 때 1번째 방법
pd.DataFrame(df.groupby(['컬럼명','컬럼명2'])['특정 컬럼명'].mean())- 2번쨰 방법
df.groupby(['컬럼명','컬럼명2'])[['특정 컬럼명']].mean() # 대괄호 1개는 시리즈, 2개 데이터 프레임
df.groupby(['컬럼명','컬럼명2'])['특정 컬럼명'].mean().reset_index()
def cal(x):
if x >= 1300:
return "yes"
else:
return "no"
df['컬럼 명'].apply(cal)
df['new 컬럼명'] = df['위 컬럼명'].apply(cal)
df['new 컬럼명'] = df['위 컬럼명'].apply(lambda x : '출력명' if x >= 1300 else '출력명2')