我已經使用Pandas加載了一個CSV文件。 CSV文件有4000行。 它正確加載。打印數據框時,將打印所有4000行。 但是當我使用「for」循環遍歷行時,它只打印文件中的第一行。通過CSV文件迭代並打印行時,只打印第一行
這是我的代碼:
import pandas as pd
df = pd.read_csv('EX2_EM_GMM.csv')
for sample in df:
print sample
的想法? 謝謝!
我已經使用Pandas加載了一個CSV文件。 CSV文件有4000行。 它正確加載。打印數據框時,將打印所有4000行。 但是當我使用「for」循環遍歷行時,它只打印文件中的第一行。通過CSV文件迭代並打印行時,只打印第一行
這是我的代碼:
import pandas as pd
df = pd.read_csv('EX2_EM_GMM.csv')
for sample in df:
print sample
的想法? 謝謝!
使用iterrows()循環遍歷每一行。默認的迭代將只顯示列。
for sample in df.iterrows():
print sample
感謝您的答案! –
用於遍歷DataFrame
行,你可以使用.iterrows()功能。
for index, row in df.iterrows():
# Process each row
在你的情況,我認爲下面的例子提供瞭解決方案,也提供 執行的時間。對於這一數額行我會用itertuples()
import pandas as pd
import numpy as np
di = {k:np.random.randn(4000) for k in ["a", "b", "c", "d"]}
df = pd.DataFrame(di)
for row in df.itertuples():
print row
%timeit [row for row in df.itertuples()]
%timeit [row for row in df.iterrows()]
感謝您的詳細解答! –
的可能的複製[如何循環排在熊貓一個數據幀? ](http://stackoverflow.com/questions/16476924/how-to-iterate-over-rows-in-a-dataframe-in-pandas) – amin