Pandas에서 DataFrame의 행을 반복하는 방법
-
Pandas DataFrame에서 행을 반복하는
index
속성 -
파이썬에서 DataFrame의 행을 반복하는
loc[]
메소드 -
파이썬에서 DataFrame의 행을 반복하는
iloc[]
메소드 -
pandas.DataFrame.iterrows()
는 행 Pandas를 반복합니다 -
pandas.DataFrame.itertuples
는 행 Pandas를 반복합니다 -
pandas.DataFrame.apply
는 행 Pandas를 반복합니다

DataFrame의 index 속성을 사용하여 Pandas DataFrame의 행을 반복 할 수 있습니다. DataFrame 객체의loc()
,iloc()
,iterrows()
,itertuples()
,iteritems()
및apply()
메소드를 사용하여 DataFrame Pandas 행을 반복 할 수도 있습니다.
다음 섹션에서 아래 데이터 프레임을 예로 사용합니다.
import pandas as pd
dates=['April-10', 'April-11', 'April-12', 'April-13','April-14','April-16']
income1=[10,20,10,15,10,12]
income2=[20,30,10,5,40,13]
df=pd.DataFrame({"Date":dates,
"Income_1":income1,
"Income_2":income2})
print(df)
출력:
Date Income_1 Income_2
0 April-10 10 20
1 April-11 20 30
2 April-12 10 10
3 April-13 15 5
4 April-14 10 40
5 April-16 12 13
Pandas DataFrame에서 행을 반복하는index
속성
Pandas DataFrame의 index
속성은 DataFrame의 맨 위 행에서 맨 아래 행까지 범위 객체를 제공합니다. 범위를 사용하여 Pandas의 행을 반복 할 수 있습니다.
import pandas as pd
dates=['April-10', 'April-11', 'April-12', 'April-13','April-14','April-16']
income1=[10,20,10,15,10,12]
income2=[20,30,10,5,40,13]
df=pd.DataFrame({"Date":dates,
"Income_1":income1,
"Income_2":income2})
for i in df.index:
print("Total income in "+ df["Date"][i]+ " is:"+str(df["Income_1"][i]+df["Income_2"][i]))
출력:
Total income in April-10 is:30
Total income in April-11 is:50
Total income in April-12 is:20
Total income in April-13 is:20
Total income in April-14 is:50
Total income in April-16 is:25
각 행에 Income_1
과 Income_2
를 더하고 총 수입을 인쇄합니다.
파이썬에서 DataFrame의 행을 반복하는loc[]
메소드
loc[]
메소드는 한 번에 한 행에 액세스하는 데 사용됩니다. DataFrame을 통한 루프 내에서loc[]
메소드를 사용하면 DataFrame의 행을 반복 할 수 있습니다.
import pandas as pd
dates=['April-10', 'April-11', 'April-12', 'April-13','April-14','April-16']
income1=[10,20,10,15,10,12]
income2=[20,30,10,5,40,13]
df=pd.DataFrame({"Date":dates,
"Income_1":income1,
"Income_2":income2})
for i in range(len(df)):
print("Total income in "+ df.loc[i,"Date"]+ " is:"+str(df.loc[i,"Income_1"]+df.loc[i,"Income_2"]))
출력:
Total income in April-10 is:30
Total income in April-11 is:50
Total income in April-12 is:20
Total income in April-13 is:20
Total income in April-14 is:50
Total income in April-16 is:25
여기서range(len(df))
는 DataFrame의 전체 행을 반복하는 범위 객체를 생성합니다.
파이썬에서 DataFrame의 행을 반복하는iloc[]
메소드
Pandas DataFrame iloc
속성은loc
속성과 매우 유사합니다. loc
과iloc
의 유일한 차이점은loc
에서는 액세스 할 행 또는 열의 이름을 지정해야하고 iloc
에서는 액세스 할 행 또는 열의 인덱스를 지정해야한다는 것입니다.
import pandas as pd
dates=['April-10', 'April-11', 'April-12', 'April-13','April-14','April-16']
income1=[10,20,10,15,10,12]
income2=[20,30,10,5,40,13]
df=pd.DataFrame({"Date":dates,
"Income_1":income1,
"Income_2":income2})
for i in range(len(df)):
print("Total income in "+ df.iloc[i,0]+ " is:"+str(df.iloc[i,1]+df.iloc[i,2]))
출력:
Total income in April-10 is:30
Total income in April-11 is:50
Total income in April-12 is:20
Total income in April-13 is:20
Total income in April-14 is:50
Total income in April-16 is:25
여기서 인덱스 0
은 DataFrame의 첫 번째 열, 즉 Date
를 나타내고, 인덱스 1
은 Income_1
열을, 인덱스 2
는 Income_2
열을 나타냅니다.
pandas.DataFrame.iterrows()
는 행 Pandas를 반복합니다
pandas.DataFrame.iterrows()
의 색인을 반환합니다 Series
로서 행과 행의 전체 데이터. 따라서이 함수를 사용하여 Pandas DataFrame의 행을 반복 할 수 있습니다.
import pandas as pd
dates=['April-10', 'April-11', 'April-12', 'April-13','April-14','April-16']
income1=[10,20,10,15,10,12]
income2=[20,30,10,5,40,13]
df=pd.DataFrame({"Date":dates,
"Income_1":income1,
"Income_2":income2})
for index, row in df.iterrows():
print("Total income in "+ row["Date"]+ " is:"+str(row["Income_1"]+row["Income_2"]))
출력:
Total income in April-10 is:30
Total income in April-11 is:50
Total income in April-12 is:20
Total income in April-13 is:20
Total income in April-14 is:50
Total income in April-16 is:25
pandas.DataFrame.itertuples
는 행 Pandas를 반복합니다
pandas.DataFrame.itertuples
는 각 행에 대한 튜플을 반복하는 객체를 반환합니다. 첫 번째 필드는 인덱스이고 나머지 필드는 열 값입니다. 따라서이 함수를 사용하여 Pandas DataFrame의 행을 반복 할 수도 있습니다.
import pandas as pd
dates=['April-10', 'April-11', 'April-12', 'April-13','April-14','April-16']
income1=[10,20,10,15,10,12]
income2=[20,30,10,5,40,13]
df=pd.DataFrame({"Date":dates,
"Income_1":income1,
"Income_2":income2})
for row in df.itertuples():
print("Total income in "+ row.Date+ " is:"+str(row.Income_1+row.Income_2))
출력:
Total income in April-10 is:30
Total income in April-11 is:50
Total income in April-12 is:20
Total income in April-13 is:20
Total income in April-14 is:50
Total income in April-16 is:25
pandas.DataFrame.apply
는 행 Pandas를 반복합니다
pandas.DataFrame.apply
는 DataFrame을 반환합니다.
DataFrame의 주어진 축을 따라 주어진 함수를 적용한 결과.
통사론:
DataFrame.apply(self,
func,
axis=0,
raw=False,
result_type=None,
args=(),
**kwds)
여기서 func
는 적용 할 함수를 나타내고 axis
는 함수가 적용되는 축을 나타냅니다. axis=1
또는axis = 'columns'
를 사용하여 각 행에 함수를 적용 할 수 있습니다.
import pandas as pd
dates=['April-10', 'April-11', 'April-12', 'April-13','April-14','April-16']
income1=[10,20,10,15,10,12]
income2=[20,30,10,5,40,13]
df=pd.DataFrame({"Date":dates,
"Income_1":income1,
"Income_2":income2})
print(df.apply(lambda row: "Total income in "+ row["Date"]+ " is:"+str(row["Income_1"]+row["Income_2"]),axis=1))
출력:
0 Total income in April-10 is:30
1 Total income in April-11 is:50
2 Total income in April-12 is:20
3 Total income in April-13 is:20
4 Total income in April-14 is:50
5 Total income in April-16 is:25
dtype: object
여기서 lambda
키워드는 각 행에 적용되는 인라인 함수를 정의하는 데 사용됩니다.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn관련 문장 - Pandas DataFrame
- Pandas DataFrame 열 헤더를 목록으로 가져 오는 방법
- Pandas DataFrame 열을 삭제하는 방법
- Pandas 에서 DataFrame 열을 Datetime 으로 변환하는 방법
- Pandas DataFrame에서 float를 정수로 변환하는 방법
- 한 열의 값으로 Pandas DataFrame 을 정렬하는 방법
- Pandas 그룹 및 합계를 집계하는 방법
관련 문장 - Pandas DataFrame Row
- Pandas DataFrame의 행 수를 얻는 방법
- Pandas에서 DataFrame 행을 무작위로 섞는 방법
- Pandas의 열 값을 기반으로 데이터 프레임 행을 필터링하는 방법
- Pandas에서 특정 열이 주어진 조건을 만족하는 모든 행의 색인을 얻는 방법
- Dataframe Pandas의 첫 번째 행 가져 오기