data.to_csv("tips_data.csv")
-> 이를 통해 데이터 저장 가능
data.to_csv("tips_data.csv")
df = pd.read_csv("tips_data.csv")
df
-> 별도 인덱스에 대해 설정하지 않으면 'Unnamed:0'이 컬럼의 형태로 들어오는 경우가 존재
↓ 이 경우 index=False
사용
# index = False 경우
data.to_csv("tips_data.csv", index = False)
# index = True 경우
data.to_csv("tips_data.csv", index = True) # True는 기본 값으로 지정되어 있어 index = True를 굳이 안 적어도 됨
df = pd.read_csv("tips_data.csv", index_col = 0)
파일명/
를 붙여주면 됨df.to_csv("temp/tips_data.csv", index = False)
df.to_excel("temp/tips_data.xlsx", index = False)
df = pd.DataFrame({
'A' : [1, 2, 3],
'B' : ['a', 'b', 'c']
})
df
-- 출력
A | B | |
---|---|---|
0 | 1 | a |
1 | 2 | b |
2 | 3 | c |
df = pd.DataFrame({
'A' : [1, 2, 3],
'B' : ['a', 'b', 'c']
}, index = ['idx1', 'idx2', 'idx3'])
df
-- 출력
A | B | |
---|---|---|
idx1 | 1 | a |
idx2 | 2 | b |
idx3 | 3 | c |
-> 문자형 형태로 변경
df.sort_index()
-> 정렬 가능
df.set_index()
-> 인덱스 다시 지정(A라는 컬럼으로 인덱스를 쓰겠다)
df.index
-> 값이 어떻게 이루어져 있고, 타입은 무엇인지 확인 가능
df.index = ['1', '2', '3']
df
-> 인덱스 변경 가능
df.reset_index()
-> 기존 값으로 만든 것
df.reset_index(drop = True)
-> 원래의 정수 값의 인덱스로 바뀜
data = {
'name' : ['Alice', 'Bob', 'Charlie'],
'age' : [25, 30, 35],
'gender' : ['Female', 'male', 'male']
}
-- 출력
name | age | gender | |
---|---|---|---|
0 | Alice | 25 | Female |
1 | Bob | 30 | male |
2 | Charlie | 35 | male |
df = pd.DataFrame(data)
df
df['name']
-> [ ]안에 컬럼명을 넣으면 해당 데이터를 불러올 수 있음
df.columns
-> 이름이 어떻게 되어있는지, 어떻게 구성되어 있는지 알 수 있음
df.columns = ['이름', '나이', '성별']
-> 이름 변경 가능
df = df.rename[columns = {'이름' : 'name'}]
df
-> 컬럼명 변경 가능
df['스포츠'] = '축구'
-> 컬럼 추가 가능
del df['스포츠']
-> 컬럼 삭제 가능
df.head()
-> 데이터를 짧게(간결하게) 보고 싶을 때 사용
-> ()안에 숫자 입력시 숫자만큼 행을 가져오게 됨
df.info()
-> 데이터 프레임의 정보 확인 가능
ex) 데이터 타입, 컬럼의 null 값, type 등
df.describe()
-> count, sum, min, max 등 기초 통계량 확인 가능 메서드
-> 숫자 타입을 가진 컬럼값들만 기초 통계량 확인 가능
df = pd.DataFrame({
'A' : [1, 2, 3, 4],
'B' : [5, 6, 7, none]
})
df
df.isna()
-> True, False 값으로 표시되며, True로 표시된 곳이 null 값임
df.info()
-> non-null 카운트 : null 값이 아닌 값이 몇개 있는지 알 수 있음
df['total_bill'].dtype
-> 해당 컬림이 무슨 타입인지 알 수 있음
df[total_bill'] = df['total_bill'].astype(str)
↓
df[total_bill'] = df['total_bill'].astype(float).astype(int)
-> 기존 값을 int
로 바꾸고 싶을 때 바로 int
로 바꾸면 소수점으로 되어 있던 숫자들이 str
로는 확인이 어려워 float
(변경하면 소수점들을 온전히 숫자로 인식 가능)으로 변경 후 int
로 변경 가능
index.컬럼정보
(우선 데이터 만들기)
df = pd.DataFrame({
'A' : [1, 2, 3, 4, 5],
'B' : [10, 20, 30, 40, 50],
'C' : [100, 200, 300, 400, 500]
})
df
df.iloc[0]
-> []안에 원하는 행의 번호를 적으면 됨
ex) 0은 첫 번째 행을 뜻함
처음/끝
df.iloc[0:2]
-> 첫 번째에서 두 번째까지 보고 싶을 때
처음/끝/간격
df.iloc[0:5:2]
-> 첫 번째부터 다섯 번째까지 2개씩 건너띄어서 보고 싶을 때
(우선 데이터 만들기)
df = pd.DataFrame({
'A' : [1, 2, 3, 4, 5],
'B' : [10, 20, 30, 40, 50],
'C' : [100, 200, 300, 400, 500]
}, index = ['a', 'b', 'c', 'd', 'e'])
df
df.loc[:, 'A']
-> 첫 번째 컬럼만 가져오고 싶을 때
df.loc['b':'d', 'A']
-> 첫 번째 컬럼만 b부터 d까지 가져오고 싶을 때
💡 iloc와 loc의 차이점