해설
import pandas as pd
df = pd.read_csv('data/broadcast.csv', index_col=0)
DataFrame에서 인덱싱을 통해 값을 받아오기 위해서는 loc 메소드
df.loc[row, column]
import pandas as pd
df = pd.read_csv('data/broadcast.csv', index_col=0)
df.loc[2016, 'KBS']
27.583000000000002
해설
column에 대한 인덱싱은 두 가지 방식
df[column]
모범 답안
import pandas as pd
df = pd.read_csv('data/broadcast.csv', index_col=0)
df['JTBC']
2011 7.380
2012 7.878
2013 7.810
2014 7.490
2015 7.267
2016 7.727
2017 9.453
Name: JTBC, dtype: float64
해설
column에 대한 인덱싱은 두 가지 방식
df[column]
리스트로 인덱싱
df[[column1, column2]]
우리가 원하는 column은 'SBS'와 'JTBC' 이니까, 다음과 같이 코드를 작성하면 됩니다.
모범 답안
import pandas as pd
df = pd.read_csv('data/broadcast.csv', index_col=0)
df[['SBS', 'JTBC']]
해설
1. 데이터 파악하기
import pandas as pd
samsong_df = pd.read_csv('data/samsong.csv')
samsong_df
import pandas as pd
hyundee_df = pd.read_csv('data/hyundee.csv')
hyundee_df
samsong_df['요일']
samsong_df['문화생활비']
hyundee_df['문화생활비']
2. 파이썬 사전(dictionary) 만들기
세 개의 column 'day', 'samsong', 'hyundee'
{'day': samsong_df['요일'],
'samsong': samsong_df['문화생활비'],
'hyundee': hyundee_df['문화생활비']}
모범 답안
import pandas as pd
samsong_df = pd.read_csv('data/samsong.csv')
hyundee_df = pd.read_csv('data/hyundee.csv')
combined_df = pd.DataFrame({
'day': samsong_df['요일'],
'samsong': samsong_df['문화생활비'],
'hyundee': hyundee_df['문화생활비']
})
combined_df
day samsong hyundee
0 MON 4308 5339
1 TUE 7644 3524
2 WED 5674 5364
3 THU 8621 9942
4 FRI 23052 33511
5 SAT 15330 19397
6 SUN 19030 19925
데이터프레임 슬라이싱
import pandas as pd
df = pd.read_csv('data/broadcast.csv', index_col=0)
# 여기에 코드를 작성하세요
df = df.loc[2012:2017, 'KBS':'SBS']
df
불린 인덱싱
import pandas as pd
df = pd.read_csv('data/broadcast.csv', index_col=0)
# 여기에 코드를 작성하세요
condition = df['SBS']<df['TV CHOSUN']
df = df.loc[condition]
df = df[['SBS','TV CHOSUN']]
df
DataFrame 인덱싱을 하는 방법
하나의 row 이름 | df.loc["row4"] | |
row 이름의 리스트 | df.loc[["row4", "row5", "row3"]] | |
row 이름의 리스트 슬라이싱 | df.loc["row2":"row5"] | df["row2":"row5"] |
하나의 column 이름 | df.loc[:, "col1"] | df["col1"] |
column 이름의 리스트 | df.loc[:, ["col4", "col6", "col3"]] | df[["col4", "col6", "col3"]] |
column 이름의 리스트 슬라이싱 | df.loc[:, "col2":"col5"] |
하나의 row 위치 | df.iloc[8] | |
row 위치의 리스트 | df.iloc[[4, 5, 3]] | |
row 위치의 리스트 슬라이싱 | df.iloc[2:5] | df[2:5] |
하나의 column 위치 | df.iloc[:, 3] | |
column 위치의 리스트 | df.iloc[:, [3, 5, 6]] | |
column 위치의 리스트 슬라이싱 | df.iloc[:, 3:7] |
import pandas as pd
df = pd.read_csv('data/body_imperial1.csv', index_col=0)
# 여기에 코드를 작성하세요
df = df.index
iname = df.index.name
'자동제어 > Python for robotics' 카테고리의 다른 글
데이터프레임 수정, 불린 인덱스 (0) | 2023.03.04 |
---|---|
데이터 프레임 고치기(변경, 삭제 , 추가, 불린 인덱스) (0) | 2023.03.04 |
pandas csv 데이터 읽기 (0) | 2023.03.01 |
pandas 데이터 타입 (0) | 2023.03.01 |
DataFrame 생성 (0) | 2023.03.01 |