gpt4 book ai didi

python - 在 Python Pandas 中,如何获取一列,然后跳过几列,然后获取连续的列

转载 作者:行者123 更新时间:2023-12-05 04:09:16 25 4
gpt4 key购买 nike

我将一个 csv 文件导入到我命名为 df 的数据框中。

df = pd.read_csv('csvfile.csv')

df 有 8 列,名称分别为 A、B、C、D、E、F、G、H。然后我需要获取 B 列和 E:H 列,以及这些列的所有行。我用了df1 = df.loc[:,"E":"H"] 获取 E 到 H 列。但无法弄清楚如何获取 B 列,仍然使用 "E":"H" 在代码中。我之所以要保留 "E":"H" 是因为 E、F、G、H 的列名很长,我尽量避免将这四个名称都键入。感谢。

最佳答案

df.loc[:, list(df.columns[1]) + list(df.columns[4:])]

如果要自动查找列,可以使用

column_list = list(df.columns)
B_index = column_list.index('B')
E_index = column_list.index('E')
H_index = column_list.index('H')
df.loc[:, list(df.columns[B_index]) + list(df.columns[E_index:H_index])]

这是四行代码,但代码可读性很强。

或者,如果您事先知道列的确切名称,最好将这些名称存储在列表中,然后使用

column_names = [
'B',
'E',
'F',
'G',
'H'
]
df.loc[:, column_names]

关于python - 在 Python Pandas 中,如何获取一列,然后跳过几列,然后获取连续的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46290711/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com