Tic商业评论

关注微信公众号【站长自定义模块】,定时推送前沿、专业、深度的商业资讯。

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

pandas基本操作(1)

1
回复
5633
查看
[复制链接]
已绑定手机

49

主题

4

回帖

1228

积分

管理员

积分
1228
QQ
来源: 2020-6-28 20:51:35 显示全部楼层 |阅读模式
本文主要讲pandas的基本操作
  • pandas的文件读取
  • pandas数据过滤
  • 缺省值处理
  • 常用统计函数处理


数据读取
import numpy as np

import pandas as pd
读取csv文件
data = pd.read_csv('data1.csv')

data
xinxi.jpg

读取xlsx文件,
data2 = pd.read_excel('data2.xlsx')

data2

xinxi.jpg

读取txt文件
#读取文本、

# data3 = pd.read_csv('data3.txt',sep = ';',header =None)

data3 = pd.read_csv('data3.txt',sep = ';')

data3
xinxi.jpg

pandas数据过滤
所有的列进行索引
data3['语文'] = [70,82.5,90]

data3['数学'] = [72,83.5,88]

data3['英语'] = [72,np.NaN,88]



print(data3.columns)

data3
xinxi.jpg

只在3列以后进行显示
data = data3[data3.columns[3:]]

#data = data3.columns[3:]

print(data)
xinxi.jpg

缺失值得处理办法
#删除nan值

data3 = data3.dropna()

data3
xinxi.jpg
#字典创建DataFrame

dict = {

  'name':['joe','susan','black'],

  'age':[19,19,20],

  'sex':['men','women','men'],

  'classid':1

}

df = pd.DataFrame(dict,index = ['one','two','three'])

print(df)

print('________________')

#添加列

df['adress'] = np.NaN

print(df)

print('________________')

#添加行

df.loc['four'] = np.NaN

print(df)
xinxi.jpg

是否为nan
#isnull notnull

print(df.isnull())

print(df.notnull())
xinxi.jpg

给nan添加值
#给NaN添加值

df.loc['one','adress'] = 'shanghai'

print(df)

print(df.dropna())#默认删除只要包含NaN得行

print(df.dropna(how = 'all'))  #之丢弃全部为NaN的数据

#print(df)
xinxi.jpg

#添加nan值

df = pd.DataFrame(np.random.randint(1,7,size=(5,3)))

print(df)

print('_____________________')

#1,2,3行为nan,1列为nan

df.loc[1:3,1] = np.NaN

print(df)

print('_____________________')

df.loc[1:2,2] = np.NaN

print(df)
xinxi.jpg

填充nan的方法
向前填充的内容为,与nan同列的上一个数为填充数
#用0填充nan

#df = df.fillna(0)

#print(df)

#向前填充

df = df.fillna(method = 'ffill')

df
xinxi.jpg

向后填充的内容为,与nan同列的下一个数为填充数
#向后填充

df = df.fillna(method = 'bfill')

df
xinxi.jpg

常用统计函数
#创建df

score = pd.DataFrame(np.random.randint(60,100,size = (4,3)),index = ['one','two','three','four'],columns = ['语文','数学','英语'])

score
xinxi.jpg

函数的统计
print(score.describe())

print('---------------')

print(score.count())

print('---------------')

print(score.min(axis = 1))

print('---------------')

print(score.min())

print('---------------')

print(score.idxmin())

print('---------------')
xinxi.jpg

print(score.idxmax())

print('---------------')

print(score.sum(axis = 1))

print(score.sum())

print('---------------')

#值得平均数

print(score.mean())

print('---------------')

#值得中位数

print(score.median())

print('---------------')

#跟据平均值计算平均绝对距离差

print(score.mad())

print('---------------')
xinxi.jpg















回复

使用道具 举报

已绑定手机

49

主题

4

回帖

1228

积分

管理员

积分
1228
QQ
2020-11-5 17:52:32 显示全部楼层
测试
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册
电话咨询: 135xxxxxxx
关注微信