Pandas库08_存取CSV文件

#学会csv、txt文件的读取与存储,了解pandas函数的参数的使用
#JSON与Excel数据,学会对JSON与Excel数据的读取与存储
import numpy as np
import pandas as pd

t_data={
"name":["唐浩","小王","老王","赵三","李四","王姐"],
"sex":["男","女","男","女","男","女"],
"year":[37,22,15,18,33,25],
"city":["成都","北京","上海","成都","深圳","北京"]
}

#pandas将表格数据读取为DataFrame数据结构,常用的函数有 read_csv、read_table

#创建一个csv文件
# fp=open("temp01.csv","w",newline="",encoding="utf-8")
# writer=csv.writer(fp)
# writer.writerow(("id","name","grade"))
# writer.writerow(("1","唐浩","99"))
# writer.writerow(("2","xiaowang","55"))
# writer.writerow(("3","lisi","65"))
# writer.writerow(("4","zhangshan","77"))
# fp.close()
"""
id,name,grade
1,唐浩,99
2,xiaowang,55
3,lisi,65
4,zhangshan,77
"""

#读取标准csv文件 read_csv()
# df1_read=pd.read_csv("temp01.csv",encoding="utf-8")
# print(df1_read)

#也可以用read_table()读取
# df2_read=pd.read_table("temp01.csv",sep=",",encoding="utf-8")
# print(df2_read)

#可以指定某列做为索引标签
# df3_read=pd.read_csv(open("temp01.csv",encoding="utf-8"),index_col="id")
# print(df3_read)

#层次化索引数据
# df4_read=pd.read_csv(open("temp02.csv",encoding="utf-8"),index_col=[0,"id"])
# print(df4_read)

#指定标题行 #当header=None,系统会多指定出一个标题列表出来,header=0为默认,第一行
#header=None,index_col=[0,"id"]这两个不能共存,在就要报错,
#header=0,index_col=[0,"id"]可以共存
# df5_read=pd.read_csv(open("temp02.csv",encoding="utf-8"),header=0,index_col=[0,"id"])
# print(df5_read)

#name指定列名
# df6_read=pd.read_csv(open("temp01.csv",encoding="utf-8"),index_col="id",header=0,names=["id","name","grade"])
# print(df6_read)

#自定义读取,有时只读一行或几行,总之一句话,只读对我有用的数据 ,skiprows=[0,1,7,-1],列表中写不读的行数
# df7_r=pd.read_csv(open("temp03.csv",encoding="utf-8"),skiprows=[0,1,7,8],header=0)
# print(df7_r)

#只读取的前行数,nrows=n
# df8_r=pd.read_csv(open("temp03.csv",encoding="utf-8"),skiprows=[0,1,7,8],header=0,nrows=3)
# print(df8_r)

#读取选择的列,usecols=["",""]
# df9_r=pd.read_csv(open("temp03.csv",encoding="utf-8"),nrows=2,usecols=["id","name"],skiprows=[0,1,7,8])
# print(df9_r)

#info()查看读取文件的信息
# df10_r=pd.read_csv(open("temp03.csv",encoding="utf-8"),nrows=2,usecols=["id","name"],skiprows=[0,1,7,8])
# print(df10_r.info())
# df11_r=pd.read_csv(open("temp01.csv",encoding="utf-8"))
# # print(df11_r.info())
# #
# # #如果文件信息很多,数据行数很多,我们可以像分页读一样,设个chunksize=n,来逐步读取
# # df12_r=pd.read_csv(open("temp01.csv",encoding="utf-8"),chunksize=2)
# # #返回了一个可以迭代的对像df12_r,可以用for 循环把他的每一个元素都循环打出来,也可有用列表生成式如下面来拿到
# # print([x for x in df12_r][1])

#将以有的DataFrame数据存入csv文件中,用pandas里的to_csv()
df=pd.DataFrame(t_data)
# print(df)
"""
name sex year city
0 唐浩 男 37 成都
1 小王 女 22 北京
2 老王 男 15 上海
3 赵三 女 18 成都
4 李四 男 33 深圳
5 王姐 女 25 北京
"""
df.to_csv("t_data.csv",encoding="utf-8",index=False) #就存进去了,以“,”号分隔

原文地址:https://www.cnblogs.com/yiyea/p/11441820.html

时间: 2024-10-08 08:59:01

Pandas库08_存取CSV文件的相关文章

Pandas库09_存取txt文件

import numpy as np import pandas as pd #创建一个txt文件 # ft=open("temp04.txt","a+",encoding="utf-8") # ft.writelines("id?name?grade"+"\n") # ft.writelines("1?tanghao?88"+"\n") # ft.writeline

python用pandas工具包来处理.csv文件,包括读写和切片

csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据.我们用python处理.csv文件时,发现用pandas工具包比csv工具包要方便很多,下面介绍一下一些基本的操作,如读写(read, write)和切片(slice). 写(write)操作: import pandas as pd # 每个列表表示csv文件里面的一列a = [1, 2, 3]b = [4, 5, 6]c = [7, 8, 9] # 字典中的key值就是csv中的列名csv_file

pandas合并多个csv文件

import pandas as pd import os #文件路径注意用\\ inputfilepath = 'C:\\Users\\Administrator\\AAA\\BBB\\' outputfilepath = 'C:\\Users\\Administrator\\AAA\\' df_filename = 'file_8_27-11_19.csv' columns_list = ['id', 'Code', 'Name', 'update_time'] #先创建一个只有表头列名的空

Pandas库10_存取json和excel文件

#json文件:javascript object notationimport numpy as npimport pandas as pd t_data={ "name":["唐浩","小王","老王","赵三","李四","王姐"], "sex":["男","女","男","

pandas筛选2个csv文件列内容相同的项

import pandas as pd a= pd.read_csv(a_csv_file, usecols=[1]) b= pd.read_csv(b_csv_file, usecols=[1]) a_list = a.values.tolist() b_list = b.values.tolist() new_a_list = [f[0] for f in a_list] new_b_list = [f[0] for f in b_list] both = list(set(new_a_li

使用pandas处理大型CSV文件

# -*- coding:utf-8 -*- ''' CSV 常用API 1)reader(csvfile[, dialect='excel'][, fmtparam]),主要用于CSV 文件的读取,返回一个 reader 对象用于在CSV 文件内容上进行行迭代. 参数: csvfile,需要是支持迭代(Iterator)的对象,通常对文件(file)对象或者列表(list)对象都是适用的,并且每次调用next() 方法的返回值是字符串(string): dialect 的默认值为excel,与

Pandas 基础(4) - 读/写 Excel 和 CSV 文件

这一节将分别介绍读/写 Excel 和 CSV 文件的各种方式: - 读入 CSV 文件 首先是准备一个 csv 文件, 这里我用的是 stock_data.csv, 文件我已上传, 大家可以直接下载下来使用. 正如前面讲过的, csv 文件可以放在 jupyter notebook 同目录下, 这样直接写文件名就可以了, 但是如果没有放在同目录下, 就需要写绝对路径, 否则读取不到. import pandas as pd df = pd.read_csv('/Users/rachel/Sit

Pandas之csv文件对列行的相关操作

1.Pandas对数据某一列删除 1.删除列 import pandas as pd df = pd.read_csv(file) #axis=1就是删除列 df.drop(['列名1','列名2'], axis=1) 2.删除记录,也就是行 import pandas as pd df = pd.read_csv(file) #axis=0就是删除记录也就是行 df.drop([0,1,3], axis=0) 2.Pandas之修改列名 1.第一种是没有表头,想要添加表头 因为csv文件是没有

Pandas读取csv文件报错UnicodeDecodeError

1.问题描述: 在使用pandas的read_csv的时候,报错,如下,UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd0 in position 254: unexpected end of data. 经过分析,可能是utf-8不识别该字符,经过各种尝试,找到解决方法. 2.解决办法 找到报错的csv文件,以记事本形式打开 打开后文件,另存为,将文件编码格式由ANSI改为UTF-8,文件类型存为csv这里有一个编码格式. 3.执行