pandas文件读取和写入方式

文件读取方式1:

with open('CustomerSurvival.csv', 'r') as f:

       data = []

       for i, line in enumerate(f.readlines()):

                row = tuple(line[:-1].split(','))

                data.append(row)

数据加载

处理普通文本:

读取文本:     read_csv()             read_table()

data=pd.read_csv('文件路径',header=None,names=[' ',' ',' '], index_clo=' ', usecols=['  ',' ',' ',' ']     )

方法参数 参数解释
filepath_or_buffer 文件路径
sep 列之间的分隔符。read_csv()默认为为',', read_table()默认为'\t'
header 默认将首行设为列名。header=None时应手动给出列名。
names header=None时设置此字段使用列表初始化列名。
index_col 将某一列作为行级索引。若使用列表,则设置复合索引。
usecols

选择读取文件中的某些列。设置为为相应列的索引列表。

                            若设置的此项,其中必须添加index_col指定的索引列

skiprows        跳过行 可选择跳过前n行或给出跳过的行索引列表。
encoding 编码。

写入文本(到csv文件):dataFrame.to_csv()

方法参数 参数解释
filepath_or_buffer 文件路径
sep 列之间的分隔符。默认为','
na_rep 写入文件时dataFrame中缺失值的内容。默认空字符串。
columns 定义需要写入文件的列。
header 是否需要写入表头。默认为True。
index 会否需要写入行索引。默认为True。
encoding 编码。

案例:读取电信数据集。

pd.read_csv('../data/CustomerSurvival.csv', header=None, index_col=0)

处理JSON

读取json:read_json()

方法参数 参数解释
filepath_or_buffer 文件路径
encoding 编码。

案例:读取电影评分数据:

pd.read_json('../data/ratings.json')

写入json:to_ json()

(较为常用;可将datafram转为json传给前端)

方法参数 参数解释
filepath_or_buffer 文件路径; 若设置为None,则返回json字符串
orient

设置面向输出格式:['records', 'index', 'columns', 'values']

(分别代表面向   记录、行级索引、列级索引、二维数据 的转换)

'records':返回结果为列表套字典(即json数据套json对象,每个对象是一行)

'index':返回结果为字典套字典

'columns':返回结果为字典套字典

'values':返回结果为列表套列表

案例:

data = {'Name':['Tom', 'Jack', 'Steve', 'Ricky'],'Age':[28,34,29,42]}
df = pd.DataFrame(data, index=['s1','s2','s3','s4'])
df.to_json(orient='records')

其他文件读取方法参见:https://pandas.pydata.org/pandas-docs/version/0.25/user_guide/index.html

猜你喜欢

转载自blog.csdn.net/weixin_45037357/article/details/108307495