在Pandas文档中,对于函数read_csv
,我试图理解当index_col
设置为默认值None
时,下面关于函数行为的解释是什么:
默认值“无”指示Pandas进行猜测。如果列标题行中的字段数等于数据文件正文中的字段数,则使用默认索引。如果该值较大,则将前几列用作索引,以便正文中剩余的字段数等于标题中的字段数。
标头后的第一行用于确定将进入索引的列数。如果后续行包含的列数少于第一行,则用NaN填充。
所以我想出了下面这个玩具的例子:
with open("io_tools_example_index.txt", "w") as f:
f.write("pandas, koalas, lizards, kangaroos\n1,2,3\n4,5,6")
当我执行pd.read_csv("io_tools_example_index.txt")
时,我得到:
而根据他们的解释,我本以为Pandas会使用pandas
列作为索引,因为列标题中的字段数大于其余行中的字段数。
1条答案
按热度按时间b1uwtaje1#
这是不明确的,但是“If it is larger”中的“it”指的是数据文件主体中的字段数,而不是列标题字段数。
那么“1”和“4”将被用作正文中行的索引,因此运行
pd.read_csv("foo2.csv")
将得到以下结果: