pandas将列表写入Excel

import numpy as np
import pandas as pd
from pandas import DataFrame
num_lis = [ 'BXD-201812-00053593','BXD-201812-00053550','BXD-201812-00053532',]
data_x = pd.read_excel("测试表.xlsx",usecols=[0,1,2,3,4])#pd.dataframe
//data_y =  pd.read_excel("测试表.xlsx",usecols=[5])

train_data = np.array(data_x)#np.ndarray()
train_x_list=train_data.tolist()#list

company_lis = []
fee_nums = []
name = []
notes = []
money = []
for li in train_x_list:
    if li[1] in num_lis:
        company_lis.append(li[0])
        fee_nums.append(li[1])
        name.append(li[2])
        notes.append(li[3])
        money.append(li[4])

dict_data = {
    'company':company_lis,
    'fee_nums':fee_nums,
    'name':name,
    'notes':notes,
    'money':money
}
data=DataFrame(dict_data)#将字典转换成为数据框
DataFrame(data).to_excel('d.xlsx',sheet_name='测试')

=======================================================================================

from pandas.core.frame import DataFrame
a=[1,2,3,4]#列表a
b=[5,6,7,8]#列表b
c={"a" : a,
   "b" : b}#将列表a,b转换成字典
data=DataFrame(c)#将字典转换成为数据框
DataFrame(data).to_excel('b.xlsx',sheet_name='测试')

第二种:将包含不同子列表的列表转换为数据框

from pandas.core.frame import DataFrame
a=[[1,2,3,4],[5,6,7,8]]#包含两个不同的子列表[1,2,3,4]和[5,6,7,8]
data=DataFrame(a)#这时候是以行为标准写入的
print(data)
1
2
3
4
输出结果:

   0  1  2  3
0  1  2  3  4
1  5  6  7  8
1
2
3
data=data.T#转置之后得到想要的结果
data.rename(columns={0:'a',1:'b'},inplace=True)#注意这里0和1都不是字符串
print(data)
1
2
3
   a  b
0  1  5
1  2  6
2  3  7
3  4  8
--------------------- 
作者:Claroja 
来源:CSDN 
原文:https://blog.csdn.net/claroja/article/details/64439735 
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/baidu_32542573/article/details/87802033