如果我直接打印数据框,我会得到正确的输出和正确的数据类型。 但是,当我尝试迭代相同的数据框时,数据类型会发生变化。
这是我的程序:
这是我的程序:
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数据类型。有什么方法可以在迭代DataFrame时保留数据类型?