import pandas as pd
DATA = pd.read_csv(url)
DATA.head()
我有一个很大的数据集,它有几十列。像上面那样将它加载到Colab中后,我可以看到每一列的名称。但是运行DATA.columns
只返回Index([], dtype='object')
。这是怎么回事?
现在我发现不可能挑出几个没有列名的列。一种方法是在加载时指定names = [...]
,但我不愿意这样做,因为有太多的列。所以我正在寻找一种按整数索引列的方法,就像在Rdf[:,[1,2,3]]
中一样,它只会给予我一个 Dataframe 的前三列。不知何故,Pandas似乎专注于列名,使整数索引非常不方便。
所以我想问的是(1)我做错了什么?当我加载 Dataframe 时,我可以获得这些列名吗?(2)如果不能,我如何通过整数列表选出第[0, 1, 10]
列?
问题似乎出在加载过程中,因为DATA.shape
返回(10000,0)
。我重新运行了几次加载代码,突然一切都恢复正常。可能Colab正在小睡或其他什么?
1条答案
按热度按时间u4dcyp6a1#
您可以使用
df.loc[:,[1,2,3]]
完美地做到这一点,但我建议您使用名称,因为如果列更改顺序或插入新列,代码可能会破坏它。