gpt4 book ai didi

python - Pandas DataFrame 仅命名 1 列

转载 作者:行者123 更新时间:2023-11-30 22:52:56 26 4
gpt4 key购买 nike

Pandas Dataframe 有没有办法只命名第一列或第一列和第二列,即使有 4 列:

这里

for x in range(1, len(table2_query) + 1):
if x == 1:
cursor.execute(table2_query[x])
df = pd.DataFrame(data=cursor.fetchall(), columns=['Q', col_name[x-1]])

它给了我这个:

AssertionError: 2 columns passed, passed data had 4 columns

最佳答案

考虑df:

df = pd.DataFrame(np.arange(8).reshape(2, 4), columns=list('ABCD'))
df

enter image description here

然后使用rename并将名称更改的字典传递给参数columns:

df.rename(columns=dict(A='a', B='b'))

enter image description here

实例化 DataFrame,同时仅命名列的子集

使用pd.DataFrame构建数据框时,您要么不传递索引/列参数并让pandas自动生成索引/列对象,要么您自己传递一个。如果您自己传递它,它必须与您数据的维度匹配。模仿自动生成 Pandas 的同时只增加你想要的 Pandas 的麻烦是不值得的,而且很丑陋,而且可能性能不佳。换句话说,我什至想不出这样做的充分理由。

另一方面,重命名列/索引值非常容易。事实上,我们可以重命名其中的几个。我认为以下更符合你的问题精神:

df = pd.DataFrame(np.arange(8).reshape(2, 4)).rename(columns=str).rename(columns={'1': 'A', '3': 'F'})
df

enter image description here

关于python - Pandas DataFrame 仅命名 1 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38362278/

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