我有如下所示的数据,
x = [1,2,3,4,5]
y = [6,7,8,9,0]
z = [11,12,12,56,6]
现在,我想将此数据导出到excel文件。为此,我使用了以下代码
import numpy as np
import pandas as pd
data = pd.DataFrame({"x":[1,2,3,4,5],
" ":np.nan,
"y":[6,7,8,9,0],
" ":np.nan,
"z":[11,12,12,56,6]})
data.to_excel('test_file.xlsx', index= False)
在这里,我使用np.nan
创建一个空列。
新的excel文件如图所示
请帮忙。谢谢。
答案 0 :(得分:1)
您的列表字典包含重复的列名' '
时出现问题,并且不允许使用每个设计。因此可以通过column_stack创建DataFrame
并定义列名称:
empty = [np.nan] * len(x)
data = pd.DataFrame(np.column_stack([x,empty,z,empty,y]), columns= ['x','','y','','z'])
或者有点破解 - 首先在dict
然后rename
创建所有唯一列:
data = pd.DataFrame({"x":x,
"empty1":np.nan,
"y":y,
"empty2":np.nan,
"z":z}, columns=['x','empty1','y','empty2','z'])
data = data.rename(columns={'empty1':'', 'empty2':''})
print (data)
x y z
0 1.0 NaN 11.0 NaN 6.0
1 2.0 NaN 12.0 NaN 7.0
2 3.0 NaN 12.0 NaN 8.0
3 4.0 NaN 56.0 NaN 9.0
4 5.0 NaN 6.0 NaN 0.0
data.to_excel('test_file.xlsx', index= False)
答案 1 :(得分:0)
你也可以尝试这种方式(没有成本黑客:))
data = pd.DataFrame({"x": [1,2,3,4,5],
"": np.nan,
"y": [6,7,8,9,0],
None: np.nan,
"z": [11,12,12,56,6]})