pandas对csv文件数据读写,选择,整理,描述

了解更多关注微信公众号“木下学Python”吧~
原文:https://blog.csdn.net/zjkpy_5/article/details/85235249

1.读写csv


import pandas as pd

从 csv 中读取 html,txt 等格式的文件

df = pd.read_csv('grades.csv',delimiter=',')
会报错---UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbf in position 2: invalid start byte,修改成以下代码

import pandas as pd

从 csv 中读取 html,txt 等格式的文件

df = pd.read_csv('grades.csv',delimiter=',',encoding='gbk')
encoding 参数设置编码,默认读取的 utf-8 编码会报错,改成 gbk 中文编码就可以了;

delimiter 参数根据读取的数据文件的分隔方式设置,大于一个字符的分隔符呗看做正则表达式,如一个或多个空格(\s+),tab 符号(\t)等

df.to_csv('grades.csv',columns=['客观分','主观分'],index=True,header=True)
columns 参数选择列,这里选择‘客官分’‘主观分’两个列,忽略了索引列(0,1,2,3,4,5,6.......)

index=False 在保存文件时,会忽略索引列,并且把原来的表覆盖掉,保存所选取的列

index=True 在保村文件时,会保留索引列(0,1,2,3,4,5.......)

header=True 在保存文件时,保留第一行的头信息

header=False 在保留文件时,不保留第一行的头信息

2.选择数据

import pandas as pd

df = pd.read_csv('grades.csv',delimiter=',',encoding='utf-8')

行的读取

rows = df[0:3]
print(rows)

列的选举

cols = df[['客观分']]
print(cols.head()) #head() 用于显示数据框中的前五行

块的选取,选4行,’主观分‘’客观分‘两列

data = df.ix[0:3,['客观分','主观分']]
print(data)

操作行和块,从已经有的列创建新的列

df['总分'] = df['客观分'] + df['主观分']
print(df.head())

根据条件过滤行

a = df[(df['客观分'] > 45) & (df['主观分'] > 45)]
print(a)

3.数据整理,描述

import pandas as pd

df = pd.read_csv('grades.csv',delimiter=',',encoding='utf-8')

按照字段进行排序

df = df.set_index('客观分') #将某个字段作为 index
df = df.sort_index()
print(df.head())

按照两个字段排序

sortlevel(0) 表示根据第一个索引排序

df = df.set_index(['主观分']).sortlevel(0)
print(df.head())

查看表的数据信息

print(df.info())

查看表的描述性统计信息

print(df.describe())

你可能感兴趣的:(pandas对csv文件数据读写,选择,整理,描述)