python用pd.read_csv()方法来读取csv文件,用DataFrame对象.to_csv()方法来保存数据成csv文件

csv文件是一种用,和换行符区分数据记录和字段的一种文件结构,可以用excel表格编辑,也可以用记事本编辑,是一种类excel的数据存储文件,也可以看成是一种数据库.

一、用DataFrame对象.to_csv()方法来保存数据成csv文件

DataFrame 数据的保存和读取:

df.to_csv 写入到 csv 文件
pd.read_csv 读取 csv 文件
df.to_json 写入到 json 文件
pd.read_json 读取 json 文件
df.to_html 写入到 html 文件
pd.read_html 读取 html 文件
df.to_excel 写入到 excel 文件
pd.read_excel 读取 excel 文件

DataFrame.to_csv(path_or_buf=None, sep=', ', na_rep='', float_format=None, columns=None, header=True, index=True,
                 index_label=None, mode='w', encoding=None, compression=None, quoting=None, quotechar='"',
                 line_terminator='\n', chunksize=None, tupleize_cols=None, date_format=None, doublequote=True,
                 escapechar=None, decimal='.')

参数:

path_or_buf : 文件路径,如果没有指定则将会直接返回字符串的 json
sep : 输出文件的字段分隔符,默认为 “,”
na_rep : 用于替换空数据的字符串,默认为’’
float_format : 设置浮点数的格式(几位小数点)
columns : 要写的列
header : 是否保存列名,默认为 True ,保存
index : 是否保存索引,默认为 True ,保存
index_label : 索引的列标签名

二、pd.read_csv()方法来读取csv文件

pandas提供了pd.read_csv()方法可以读取其中的数据并且转换成DataFrame数据帧。python的强大之处就在于他可以把不同的数据库类型,比如txt/csv/.xls/.sql转换成统一的DataFrame格式然后进行统一的处理。真是做到了标准化。我们可以用以下代码来演示csv文件的读取操作。

import pandas as pd
data1 = pd.read_csv('rating.csv')
print(data1)
print("************取消第一行作为表头*************")
data2 = pd.read_csv('rating.csv',header=None)
print(data2)
print("************为各个字段取名**************")
data3 = pd.read_csv('rating.csv',names=['user_id','book_id','rating'])
print(data3)
print("***********将某一字段设为索引***************")
data3 = pd.read_csv('rating.csv',
	names=['user_id','book_id','rating'],
	index_col = "user_id")
print(data3)
print("************用sep参数设置分隔符**************")
data4 = pd.read_csv('rating.csv',
	names=['user_id','book_id','rating'],
	sep=',')
print(data4)
print("************自动补全缺失数据为NaN**************")
data5 = pd.read_csv('data.csv',header=None)
print(data5)

输出结果如下:

   1   258  5
0  2  4081  4
1  2   260  5
2  2  9296  5
3  2  2318  3
4  2    26  4
5  2   315  3
6  2    33  4
7  2   301  5
************取消第一行作为表头*************
   0     1  2
0  1   258  5
1  2  4081  4
2  2   260  5
3  2  9296  5
4  2  2318  3
5  2    26  4
6  2   315  3
7  2    33  4
8  2   301  5
************为各个字段取名**************
   user_id  book_id  rating
0        1      258       5
1        2     4081       4
2        2      260       5
3        2     9296       5
4        2     2318       3
5        2       26       4
6        2      315       3
7        2       33       4
8        2      301       5
***********将某一字段设为索引***************
         book_id  rating
user_id                 
1            258       5
2           4081       4
2            260       5
2           9296       5
2           2318       3
2             26       4
2            315       3
2             33       4
2            301       5
************用sep参数设置分隔符**************
   user_id  book_id  rating
0        1      258       5
1        2     4081       4
2        2      260       5
3        2     9296       5
4        2     2318       3
5        2       26       4
6        2      315       3
7        2       33       4
8        2      301       5
************自动补全缺失数据为NaN**************
    0    1   2     3   4
0   1  2.0   3   4.0   5
1   6  7.0   8   NaN  10
2  11  NaN  13  14.0  15
[Finished in 4.5s]

输出结果的具体解释参考代码中的注释。

你可能感兴趣的:(python)