我有一个很大的df,我想从中进行计算和预测,问题是我找不到一种方法来获取所有带有“数字”列的列名称的列表。我不可能从顶部算起就知道它是哪个数字,我宁愿不写出所有列名。
能够使用这样的东西会很好:
df.iloc[:, np.r_[2, 5:10, 22:102, 109:129]]
但是要使它正常工作,我需要知道哪一列的编号是多少。
list(df)给了我一个不错的列表,但没有数字,这使它在此任务中毫无意义。

最佳答案

我建议使用enumerate创建字典:

df = pd.DataFrame({
        'A':list('abcdef'),
         'B':[4,5,4,5,5,4],
         'C':[7,8.0,9,4.0,2,3],
         'D':[1,3,5,7,1,0],
         'E':[5,3,6,9,2,4],
         'F':list('aaabbb')
})

d = dict(enumerate(df))
print (d)
{0: 'A', 1: 'B', 2: 'C', 3: 'D', 4: 'E', 5: 'F'}


或像元组列表中建议的@Chris这样的注释:

L = list(enumerate(df))
print (L)
[(0, 'A'), (1, 'B'), (2, 'C'), (3, 'D'), (4, 'E'), (5, 'F')]

关于python - 获取列“数字”和列名称,以便更轻松地选择 Pandas 中大df中的几列(并非始终相邻),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58523129/

10-12 22:02
查看更多