''' read_csv:从文件,url,文件型对象中加载带分隔符的数据,默认分隔符为逗号 read_table:从文件,url,文件型对象中加载带分隔符的数据,默认分隔符为制表符(" ") 实质上是通用的,都是返回一个DataFrame,在实际使用中可以通过对sep参数的控制来对任何文本文件读取 CSV文件和TXT文件是等同的,无论是读取还是写入。另一个相同点是读写速度比EXCEL快,快得多。当然xlsx格式的文件小。 ''' from pandas import read_csv; df = read_csv("..1.csv",encoding='UTF-8') df from pandas import read_table; #seq表示分割的形式 df = read_table('..2.txt',names=['age', 'name'], sep=',') df from pandas import read_excel; df = read_excel("..3.xlsx",sheetname="data") df from pandas import read_table; from pandas import DataFrame; df = read_table('..中文.txt', sep=',', encoding='UTF-8') df
from pandas import DataFrame; df = DataFrame({ 'age': [21, 22, 23], 'name': ['KEN', 'John', 'JIMI'] }); df.to_csv("..f.csv", index=False);
其他基本处理
去重 newDF = df.drop_duplicates(); 去数据结构中为空的数据 newDF = df.dropna() 去除数据两边的空格 newName = df['name'].str.strip() 字段截取 df['tel'] = df['tel'].astype(str) #先要把数字转换成字符串格式 #运营商 bands = df['tel'].str.slice(0, 3) 字段拆分 from pandas import Series from pandas import DataFrame from pandas import read_csv df = read_csv("D:\Python\3.2\2.csv") newDF = df['name'].str.split(' ', 1, True) #‘’表示分割的形式,1,表示分为两列;True。表示扩展。扩展的返回值为DataFrame.相反为Series
指定条件的高级处理
随机抽数 r = numpy.random.randint(0, 10, 3) #0-10之间抽3个数字 记录合并 import pandas from pandas import read_csv df1 = read_csv("D://4.1//data1.1.csv", sep="|") df2 = read_csv("D://4.1//data2.2.csv", sep="|") df3 = read_csv("D://4.1//data3.3.csv", sep="|") df = pandas.concat([df1, df2, df3]) 字段拼接 from pandas import read_csv; df = read_csv( "D://PA//4.11//data.csv", sep=" ", names=['band', 'area', 'num'] ); df = df.astype(str); tel = df['band'] + df['area'] + df['num'] 两表精确匹配 import pandas; from pandas import read_csv; items = read_csv( "D://PA//4.12//data1.csv", sep='|', names=['id', 'comments', 'title'] ); prices = read_csv( "D://PA//4.12//data2.csv", sep='|', names=['id', 'oldPrice', 'nowPrice'] ); itemPrices = pandas.merge( items, #一表 prices, #二表 left_on='id', #一表匹配的对象 right_on='id'#二表匹配的对象 );
另外还有时间格式数据的处理
参考链接:
https://blog.csdn.net/weixin_42612434/article/details/82759001