Python 将未命名的列重命名为dataframe

Python 将未命名的列重命名为dataframe,python,pandas,csv,Python,Pandas,Csv,我的csv文件没有第一列的列名,我想重命名它。通常,我会执行data.rename(columns={'oldname':'newname'},inplace=True),但csv文件中没有名称,只有“” 它有一个名称,名称就是'(空字符串) 加载csv时,请使用“index\u col”选项,如 pd.read_csv('test.csv', index_col=0) 索引列:int或sequence或False,默认无列用作 数据帧的行标签。如果给定一个序列,则为多索引 使用。如果您有一个

我的csv文件没有第一列的列名,我想重命名它。通常,我会执行
data.rename(columns={'oldname':'newname'},inplace=True)
,但csv文件中没有名称,只有“”

它有一个名称,名称就是
'
(空字符串)


加载csv时,请使用“index\u col”选项,如

pd.read_csv('test.csv', index_col=0)
索引列:int或sequence或False,默认无列用作 数据帧的行标签。如果给定一个序列,则为多索引 使用。如果您有一个格式不正确的文件,文件末尾有分隔符 每一行,你可能会考虑索引xCo=false迫使熊猫不 使用第一列作为索引(行名称)


您可以使用
data.head()

如果将
'Unnamed:0'
作为列标题返回,则可以按以下方式重命名它:

data.rename( columns={'Unnamed: 0':'new column name'}, inplace=True )

解决方案可以改进为
data.rename(columns={0:'newcolumn name',inplace=True)
。无需使用
'Unnamed:0'
,只需使用列号,在本例中为
0
,然后提供
'new column name'

尝试以下代码


df.columns=['A','B','C','D']

第一列/行可能没有名称,因为它是索引而不是列/行。这就是为什么需要像这样重命名索引:

df.index.name = 'new_name'

通常根据其索引

命名空白列名称 例如,假设4列未命名

df.rename({'unnamed:3':'new_name'},inplace=True)
通常是这样命名的,因为列的索引从零开始。

这应该可以:

data.rename(列={0:'Articles'},inplace=True)

此csv是如何生成的?如果它是从pandas导出的,那么这有时表明第一列是索引。在这种情况下,您可以在
pd.read\u csv('file.csv',index\u col=[0])中读取时告诉熊猫这一点。
您需要inplace=True来直接更改df。DF.ReNeMe(列={'':‘a’},InPosie= TRUE)我尝试使用InPosieTrue,并且返回空白数据框,不确定发生了什么,是否有其他的解决方案?只是万一有人需要这个:在大熊猫0.23.4,我需要使用<代码>。重命名(列=‘未命名:0’:‘ID’})要重命名第一个未命名的列,当我打印数据框时,我的列没有名称。它只显示列0,我使用了这种技术。这对我没有帮助。您能建议其他方法用Pandas 1.0.3替换名称吗?使用带有索引键的字典重命名列似乎不起作用。它只适用于行。事实上,我认为它只适用于行,因为实际的数据帧索引使用顺序整数作为行名称。这是最好、最简单的解决方案+公元前1年,我寻找了一种方法来实现这一点,但毫无用处——当您只想复制/粘贴到excel时,这种方法非常方便。来吧,python,默认情况下所有东西都应该有一个名称!
df.rename({'unnamed:3':'new_name'},inplace=True)