更多内容看官方文档 ↑
虽然都是文本文件,但是csv字段用逗号分隔,txt文件可以用逗号、制表符、空格
python中的pandas库提供将表格型数据读取为DataFrame对象的函数
import pandas as pd
a = pd.read_csv ('C:/../file.csv')
#read_csv默认制表符为逗号
a = pd.read_csv('C:/../file.txt', sep=',')
#read_csv可以读取txt,当txt没有逗号分隔的时候,添加sep的分隔符参数,但是如果有制表符,制表符会被读取为\t
a = pd.read_table('C:/../file.txt')
#read_table默认符号为制表符,即不会出现\t在读取内容中,但是使用的时候如果有多个\t就会生成了NaN
a = pd.read_table('C:/../file.txt', sep='\s+')
#添加正则表达式可以消除NAN
如何读取DaraFrame中的某一列数据
data = DataFrame() #先设定一个DataFrame
data['b'] #选择单列,产生Series, 与 a.b 等效
data[a.columns[1:]] #这句是取第二列到最后一列的数据
data[1:5] #这是取第二行到第六行的数据,不是以列取了
#索引的时候,直接输入'column',是以列索引,即是选择单列
#切片索引则是对行进行切片
#使用loc 或者iloc(只取整数)
data.loc[:, ['a','b']] #选择a到b列
data.loc[1:2, ['a','b']] #选择a到b列的1到2行
a = data[data['id']==int(str(name[:4]))]
#以某列中的某个值取出DataFrame中的一段
a.loc[:, 'Man'] = int(a['Man'].median())
a.loc[:, 'Woman'] = int(a['Woman'].median())
#将该段中的某条列中的错误值改成该段的中位数
data_result = data_result.append(a)
#重新拼起来一个完整的改正后的DataFrame
上一段代码是由于拿到一个csv的数据集中,某个标签的一段列数据存在错误值
比如理应都是0,却有一、两个1混在其中
于是先按标签取出一段DataFrame,然后再将错误值所在的列直接赋值为中位数