【发布时间】:2018-07-21 05:12:59
【问题描述】:
如果我直接打印出一个数据帧,我会得到具有正确数据类型的正确输出。但是,当我尝试迭代相同的数据帧时,数据类型正在发生变化。
这是我的程序:
import pandas as pd
F = 9.37556366342
p = 0.000101673198518
df_between = 2
df_within = 471
df_total = 473
summary_stats_vals = [(F,p,df_between,df_within,df_total)]
labels = ['F-statistics', 'p-value', 'df-between', 'df-within', 'df-total']
df = pd.DataFrame.from_records(summary_stats_vals,columns=labels)
print(df)
print()
#Iterating the dataframe
for index, row in df.iterrows():
df_row = list()
df_row.append(index)
for col in df.columns:
df_row.append(row[col])
print(row)
从下面的截图可以看出,df_between、df_within 和 df_total 的数据类型在迭代时并没有被保留。它们正在从 int 更改为 float 数据类型。在迭代数据帧时我可以如何保留数据类型?
【问题讨论】:
-
请不要发布数据图片。将其复制并粘贴到格式化为代码的问题中。
标签: python pandas dataframe iteration