import pandas as pd
df = pd.DataFrame({'col1': [1, 2, 3], 'col2': [2, 3, 4]})
for i=0 to range(len(df))
print(df.iloc[i]['col1'] + '-' + df.iloc[i]['col2'])
我想使用:(但它给我错误)
for d in df:
print(d['col1'] + '-' + d['col2'])
# I want output
# 2-3
# 3-4
仅是简单的熊猫问题...
答案 0 :(得分:2)
如果要按所有列循环:
for col in df:
print(df[col])
是什么意思?
for col in df.columns:
print(df[col])
或者如果需要按列col1
的值循环:
for val in df['col1']:
print(val)
答案 1 :(得分:2)
IIUC:
您要打印列'col1'
的每一行
print(*df.col1, sep='\n')
答案 2 :(得分:0)
for index, row in df.iterrows():
print(row['col1'], row['col2'])
感谢@Jezrael link,我能够将代码更改为更具前瞻性的代码,而不是我的代码,有点老式的大声笑
请“单击”以检查答案是否正确。
Zip方法也可以纠正,但是它将限制代码的灵活性。例如,我可以再次将数据以不同的顺序转换为string.format。因此,迭代是实现此目标的方法。虽然,我已经用旧代码完成了我的项目。但是我还是将其更改为新的正确方法。