从excel阅读到pandas时,它显示为
t0001 Albania 0.03914382317658349
0 t0001 Algeria 0.298994
1 t0001 Austria 1.01137
2 t0001 Belgium 0.306369
我想要实现的是插入“&time;'''''''值',它应该显示如下
time region value
0 t0001 Albania 0.0391438
1 t0001 Algeria 0.298994
2 t0001 Austria 1.01137
3 t0001 Belgium 0.306369
是否有可能在熊猫中实现?
答案 0 :(得分:3)
阅读您的Excel文件时,请使用header
和names
参数进行阅读。
df = pd.read_excel(..., header=None, names=['time', 'region', 'value'])
如果您感到好奇,修复方法是调用reset_index
并指定列:
df = df.T.reset_index().T
df.columns = ['time', 'region', 'value']
df['value'] = df['value'].astype(float)
df
time region value
index t0001 Albania 0.039144
0 t0001 Algeria 0.298994
1 t0001 Austria 1.011370
2 t0001 Belgium 0.306369
你应该尽可能地努力达不到像这样运行清理代码的程度。
答案 1 :(得分:1)
Header = None
是正确的解决方案,但作为替代解决方案,您也可以这样做:
df.loc[-1] = df.columns
df.index += 1
df.columns = ['time', 'region', 'value']
df.value = df.value.astype(float)
time region value 1 t0001 Algeria 0.298994 2 t0001 Austria 1.01137 3 t0001 Belgium 0.306369 0 t0001 Albania 0.039143