数据建模师的日常--小技巧篇

来源:互联网 发布:许昌自学考试网络报名 编辑:程序博客网 时间:2024/05/25 18:09

1. 循环读取目录下所有CSV文件

1.1 先查看文件目录

import osfilelist = os.listdir(r'E:\scripts\2017-2-27论文')filelistOut[5]: ['paper_with_fanqizha.py', 'paper_with_pingfenka.py', '借款基础信息.csv', '央行-信用卡明细.csv', '央行-基础信息.csv', '央行-查询记录.csv', '淘宝-基础信息.csv', '淘宝-月账单.csv', '淘宝-消费明细.csv', '淘宝-消费类型分布.csv', '账单.csv', '通讯录-联系人统计.csv']


1.2复制要读取的文件名, 创建列表, 并循环读取

#读取数据并保存到data_list中filelist = [ '借款基础信息.csv',             '央行-信用卡明细.csv',             '央行-基础信息.csv',             '央行-查询记录.csv',             '淘宝-基础信息.csv',             '淘宝-月账单.csv',             '淘宝-消费明细.csv',             '淘宝-消费类型分布.csv',             '账单.csv',             '通讯录-联系人统计.csv']if 'data_list' not in dir():    data_list = []    for fname in filelist:        df = pd.read_csv(fname)        df.rename(columns={'\ufeff借款编号': '借款编号',     #填坑                     '\ufeff借款信息': '借款编号'}, inplace=True)        assert df.iloc[:, 0].name == '借款编号', "改名未成功"        data_list.append(df)


2.开发时避免重复读取数据, 浪费时间

判断数据是否存在于内存空间后读取

import pandasif data not in dir():    data = pd.read_csv(fname)



3. 在公司和宿舍使用的脚本目录不一样, 使用目录时需要更改目录, 利用try - except 尝试读取不同目录的文件

try:    tips = pd.read_csv(r'F:\分类\工作文件\python学习\pydata-book-master\ch08\tips.csv')except:    tips = pd.read_csv(r'E:\scripts\python学习\pydata-book-master\ch08\tips.csv')



4.对字符串所代表的变量赋值

spyder 会警告未定义参数, 但是并不影响脚本运行, 克服强迫症

globals()["a"] = 1 #方法1print(a)setattr(__builtins__, "b", 2) #方法2print(b)


5.读取字符串为pd.DataFrame

<利用python进行数据分析>代码有误, 查廖雪峰的官方网站找到解决方法

from io import StringIO #书上是from StringIO import StringIO, 报错找不到模块data = """\Sample    Gender    Handedness1    Female    Right-handed2    Male    Left-handed3    Female    Right-handed4    Male    Right-handed5    Male    Left-handed6    Male    Right-handed7    Female    Right-handed8    Female    Left-handed9    Male    Right-handed10    Female    Right-handed"""data = pd.read_table(StringIO(data), sep='\s+')




0 0
原创粉丝点击