20221008 csv 学习总结

1、csv的header参数: 

默认 header=0 也就是第一行作为列名字

header=None :第一行不作为列名,数据有列名

在生成csv 文件时, header=False : 数据无列名

2、csv如何按照将列表转为一列:

pd.dataframe(list) :转为一列 (后续再追加时,会在第一列一直追加)

pd.dataframe([liat]) :转为一行  【 :) 】

3、追加列:

定义新dict,将列表中元素添加到dict中

list=[[1],[2,3,4,5]]

dict={}

for i in range(len(list)):

dict ['{}'.format (i) ] = list [i]

最后:

dict转dataframe 再转csc文件!!!!!



再这之前还尝试过很多种csv行转列:(  均以失败告终 【其实行转列,so easy!!!,只是因为我的csv文件长度均不一致,所以一般方法进行是涉及到长度的问题而报错很多,因此直接用dict 转换,以下为一些长度一直的转换方法:

import pandas as pd

df = pd.read_csv(file path)
data = df.values  # data是数组,直接从文件读出来的数据格式是数组
index1 = list(df.keys())  # 获取原有csv文件的标题,并形成列表
data = list(map(list, zip(*data)))  # map()可以单独列出列表,将数组转换成列表
data = pd.DataFrame(data, index=index1)  # 将data的行列转换
data.to_csv(r'.\Data-Structures-and-Algorithms\built-in functions\weather1.csv', header=0)

 



ps:关于追加列也有很多种简单的方法:

df=pd.read_csv(filepath) (文件已经存在)

df[' 追加的列名字 '] = 内容 (要求长度一致)



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值