반응형
Python Pandas 데이터 프레임의 행을 반복하려고합니다. 데이터 프레임의 각 행 내에서 열 이름으로 행을 따라 각 값을 참조하려고합니다.
내가 가진 것은 다음과 같습니다.
import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.rand(10,4),columns=list('ABCD'))
print df
A B C D
0 0.351741 0.186022 0.238705 0.081457
1 0.950817 0.665594 0.671151 0.730102
2 0.727996 0.442725 0.658816 0.003515
3 0.155604 0.567044 0.943466 0.666576
4 0.056922 0.751562 0.135624 0.597252
5 0.577770 0.995546 0.984923 0.123392
6 0.121061 0.490894 0.134702 0.358296
7 0.895856 0.617628 0.722529 0.794110
8 0.611006 0.328815 0.395859 0.507364
9 0.616169 0.527488 0.186614 0.278792
내가하려는 것은 다음과 같습니다.
for row in df.iterrows():
print row.loc[0,'A']
print row.A
print row.index()
행을 반복하면서 동시에 열 이름을 사용할 수 있습니까?
해결 방법
itertuples ()
도 좋아합니다.
for row in df.itertuples():
print(row.A)
print(row.Index)
행은 명명 된 튜플이므로 각 행의 값에 액세스하려는 경우 훨씬 더 빠릅니다.
속도 실행 :
df = pd.DataFrame([x for x in range(1000*1000)], columns=['A'])
st=time.time()
for index, row in df.iterrows():
row.A
print(time.time()-st)
45.05799984931946
st=time.time()
for row in df.itertuples():
row.A
print(time.time() - st)
0.48400020599365234
참조 페이지 https://stackoverflow.com/questions/43619896
반응형
'파이썬' 카테고리의 다른 글
파이썬 OCR 용 Tensorflow 모델 (0) | 2020.10.21 |
---|---|
파이썬 Python 3에서 execfile의 대안은 무엇입니까? (0) | 2020.10.21 |
파이썬 Ubuntu16.04에 python3.6-dev를 설치할 수없는 이유 (0) | 2020.10.21 |
파이썬 텍스트 인코딩을 결정하는 방법은 무엇입니까? (0) | 2020.10.21 |
파이썬 __getitem__ 메서드 이해 (0) | 2020.10.21 |
댓글