转载自公众号:简说Python
pandas读取
import pandas as pdimport os# 获取当前文件父目录路径father_path = os.getcwd()print(father_path)# csv文件路径csv_path =father_path+r'\city_station.csv'# 读取数据csv_read = pd.read_csv(csv_path)# 显示前十行print(csv_read.head(10))
函数解析:
read_csv(filepath_or_buffer,sep,header,names,skiprows,na_values,encoding,nrows)
按指定格式读取csv文件。
常见参数解析:
1. filepath_or_buffer:字符串,表示文件路径;
2. sep: 字符串,指定分割符,默认是’,’;
3. header:数值, 指定第几行作为列名(忽略注解行),如果没有指定列名,默认header=0; 如果指定了列名header=None;
4. names: 列表,指定列名,如果文件中不包含header的行,应该显性表示header=None。
5. skiprows:列表,需要忽略的行数(从0开始),设置的行数将不会进行读取。
6. na_values:列表,设置需要将值替换成NAN的值,pandas默认NAN为缺省,可以用来处理一些缺省、错误的数值。
7. encoding:字符串,用于unicode的文本编码格式。例如,"utf-8"或"gbk"等文本的编码格式。
8. nrows:需要读取的行数。
利用pandas写入CSV文件
补充:写入csv文件乱码,df = pd.DataFrame(data,encoding='utf-8-sig')里面加上encoding='utf-8-sig'
'''利用pands 写入csv文件'''import pandas as pdimport osfather_path = os.getcwd()#保存数据文件路径path_csv =father_path+r'\data01\temp_city.csv'# 写入数据(列名+列值)data = {"站点名":["北京北","北京东","北京","北京难","北京西"],"代号":["VAP","BOP","BJP","VNP","BXP"]}# 数据初始化成为DataFrame对象df = pd.DataFrame(data,encoding='utf-8-sig')# 将数据写入df.to_csv(path_csv)
to_csv(path_or_buf,sep,na_rep,columns,header,index)
1. path_or_buf:字符串,文件名、文件具体、相对路径、文件流等;
2. sep:字符串,文件分割符号;
3. na_rep:字符串,将NaN转换为特定值;
4. columns:列表,选择部分列写入;
5. header:None,写入时忽略列名;
6. index:False则选择不写入索引,默认为True。