Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何设置python中第一列的列名?奇怪的错误_Python_Pandas_Csv_Dataframe - Fatal编程技术网

如何设置python中第一列的列名?奇怪的错误

如何设置python中第一列的列名?奇怪的错误,python,pandas,csv,dataframe,Python,Pandas,Csv,Dataframe,我有一个xls,标题行为: AZ-Phoenix CA-Los Angeles CA-San Diego YEAR PHXR LXXR SDXR January 1987 59.33 54.67 77 February 1987 59.65 54.89 78 March 1987 59.99 55.16 79 但它正在用“年

我有一个xls,标题行为:

AZ-Phoenix CA-Los Angeles CA-San Diego YEAR PHXR LXXR SDXR January 1987 59.33 54.67 77 February 1987 59.65 54.89 78 March 1987 59.99 55.16 79 但它正在用“年”取代“AZ凤凰号”。我真的不能改变我想要的专栏


如何使用
重命名\u轴来更改此行

df.rename_axis('YEAR',1).rename_axis('YEAR',0) # change YEAR to whatever you need for rename :) 
Out[754]: 
YEAR  value           timestamp
YEAR                           
0      1    2017-10-03 14:33:52
1     Water 2017-10-04 14:33:48
2      1    2017-10-04 14:33:45
3      1    2017-10-05 14:33:30
4     Water 2017-10-03 14:33:40
5     Water 2017-10-05 14:32:13
6     Water 2017-10-04 14:32:01
7      1    2017-10-03 14:31:55

年份不是一列,而是这里的索引。
尝试:

或:


在这种情况下,年份将成为普通列,您可以重命名它。

如果您粘贴的文本是Excel文件的格式,如下所示:

df['AZ-Phoenix']

您可以通过以下两种方式处理此问题:

您可以假设这两行是多级索引:

df = pandas.read_excel('test.xlsx', header=[0,1])
这将产生一个数据帧,您可以像这样对其进行索引:

df['AZ-Phoenix']
导致

YEAR         PHXR
1987-01-01  59.33
1987-02-01  59.65
1987-03-01  59.99
如果第一行实际上是多余的(看起来机场已经由三个字母的机场代码唯一地定义了,上面加了一个R),那么您可以在导入时忽略该行并获得一个“更平坦”的数据帧:

df_flat = pandas.read_excel('test.xlsx', skiprows=1, index_col=0)
这为您提供了一些可以通过机场代码进行索引的内容:

df_flat.PHXR
给予


第一列是索引。您可以尝试
data\u xls=data\u xls.reset\u index()
将其设置为列。我尝试了reset.index。这是在添加索引。要清楚的是,导入后粘贴的输出是什么,还是Excel文件的格式?是的,这是从Excel文件导入的
df_flat = pandas.read_excel('test.xlsx', skiprows=1, index_col=0)
df_flat.PHXR
YEAR
1987-01-01    59.33
1987-02-01    59.65
1987-03-01    59.99
Name: PHXR, dtype: float64