转载自公众号:简说Python
pandas读取
import pandas as pd
import 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 pd
import os
father_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。