【问题标题】:How can I select multiple columns in python [duplicate]如何在python中选择多个列[重复]
【发布时间】:2018-12-28 23:54:53
【问题描述】:

我正在处理一个数据集(行:5000 和列:60)。 我想阅读一些与我的分析相关的列,但代码不起作用。

第 1 列、第 5 列、第 22 到 28 列和第 47 到 54 列。

我已阅读手册,似乎我可以一一选择列数或范围,而不是两者。 请告诉我如何解决这个问题?

All_Dataset = pd.read_csv('Data.csv', engine = 'python')
data = All_Dataset.iloc[:, [0, 5,  22:29, 47:55]]

【问题讨论】:

  • 您正在使用的包(据我所知是熊猫)不是 python 标准库的一部分。当您对第三方包有疑问时,请在标签中提及,最好也在您的问题中提及。

标签: python pandas


【解决方案1】:

使用np.r_

import numpy as np

df.iloc[:,np.r_[0, 5,  22:29, 47:55]]

【讨论】:

  • 非常感谢,完美运行
【解决方案2】:

您可以通过 chaining 迭代创建一个包含索引的列表:

import numpy as np
import pandas as pd
from itertools import chain

# create sample data-frame
data = np.random.randint(1, 10, size=(10, 100))
df = pd.DataFrame(data=data)

# create indices
indices = list(chain([0, 5], range(22, 29), range(47, 55)))

result = df.iloc[:, indices]
print(result.shape)

输出

(10, 17)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-07-20
    • 1970-01-01
    • 2017-01-14
    • 2017-01-04
    • 1970-01-01
    • 2023-04-10
    • 1970-01-01
    相关资源
    最近更新 更多