美文网首页
pandas用法总结

pandas用法总结

作者: 护国寺小学生 | 来源:发表于2019-01-31 19:02 被阅读0次

#1、数据的生成(dataframe数据框|series序列)

#模块导入

import pandas as pd

import numpy as np

import pymysql

#方法1:excel、csv、sql导入

df_exl=pd.read_excel('C:/Users/15432/Desktop/testdata_1.xlsx',header=0)#导入excel文件从0行开始

df_exl2=pd.read_excel('C:/Users/15432/Desktop/testdata_2.xlsx')

df_csv=pd.read_csv('C:/Users/15432/Desktop/testdata_1.csv')

db = pymysql.connect("127.0.0.1","root","123456","mysql" )# 打开数据库连接:主机,账号,密码,数据库名称

cursor = db.cursor()# 使用 cursor() 方法创建一个游标对象 cursor

sql="""SELECT VERSION()"""

cursor.execute(sql)#使用 execute()  方法执行 SQL 查询

data = cursor.fetchone()# 使用 fetchone() 方法获取单条数据.

print ("Database version : %s " % data)

db.close()# 关闭数据库连接

#方法2:自己创建dataframe数据框或series序列

series=pd.Series([1,2,3,4,np.nan,6,7])

print(series)

dates=pd.date_range('20180601',periods=3)

df1=pd.DataFrame(np.random.randn(3,4),index=dates,columns=['one','two','three','four'])#numpy随机数生成

df2=pd.DataFrame({'id':[1001,1002,1003],'city':['bj','sh','gz'],'age':['22','23','34']})#字典生成

print(df1)

df2


2、数据表信息查看

(1)数据表的维度查看

df_exl.shape

(2)数据表基本信息(维度、列名称、数据格式、所占空间等)

df_exl.info

(3)查看数据表的值

df_exl.values

(4)查看列名称

df_exl.columns

#(5)查看前5行数据、后5行数据:

df_exl.head()

df_exl.tail()

(6)查询某一列格式

df_exl['用户编号'].dtype

(7)查询空值

df_exl.isnull()

df_exl.isna()

(8)查看某一列的唯一值

consumer=df_exl['客户名'].unique()

counter=0

for i in consumer:

    counter+=1

print(counter)

consumer

3、数据清洗

(1)用数字0填充空值

df_exl.fillna(value=0)

df_exl.dropna(axis=1,how='all')#删除整列都是na值的整列删除

(2) 用201805这列的均值填充空值

df_exl['201805'].fillna(df_exl['201805'].mean())

(3)将数据表某列或某行删除

df_exl=df_exl.drop(axis=1,columns='201806')

df_exl=df_exl.drop(axis=0,index='')

(4)清除某列的字符空格

df_exl['客户名']=df_exl['客户名'].map(str.strip)

(5)大小写转换

df_exl['客户名']=df_exl['客户名'].str.lower()

df_exl['客户名']=df_exl['客户名'].str.upper()

(6)更改数据格式

df_exl['入网时间'].astype('int64')

(7)删除先出现的重复值

df_exl['用户编号'].drop_duplicates()

删除后出现的重复值

df_exl['用户编号'].drop_duplicates(kepp='last')

(8)数据替换

df2['city'].replace('bj','sh')#sh替换bj

3、数据预处理

#删除201806这列

df_exl=df_exl.drop(axis=1,columns='201806')

df_exl2=df_exl2.drop(axis=1,columns='201806')

#(1)数据表合并

#交集形式

df_inner=pd.merge(df_exl,df_exl2,how='inner',on='用户编号')

#并集形式

df_outer=pd.merge(df_exl,df_exl2,how='outer',on=['用户编号','设备号','中心','执行人','入网时间','客户名'])

#(3)设置索引列

df_exl.set_index('用户编号')

#(4)按索引列排序

df_exl.sort_index()

#(5)按特定列的值排序

df_exl.sort_values(by=['用户编号'])

#(6)如果用户编号列的值大于1000000000000000,则客户名列显示high,否则显示low

df_exl['客户名']=np.where(df_exl['用户编号']>1000000000000000,'high','low')

#df_exl['客户名']

#对复合多个条件的数据进行分组标记

df_exl.loc[(df_exl['201801']==0) & (df_exl['201803']>=20),'sign']=1

相关文章

  • pandas用法总结

    #1、数据的生成(dataframe数据框|series序列) #模块导入 import pandas as pd...

  • 【函数学习】pandas.dataframe.drop()

    pandas.dataframe.drop()删除集合中的整行或整列; 用法: import pandas as ...

  • 《利用pyhton进行数据分析》笔记-Pandas(一)

    Pandas是这本书的重点,以后的操作基本上都是在Pandas的基础上完成的。就用法上,Pandas要比Numpy...

  • pandas groupby用法之as_index

    pandas groupby用法之as_index DataFrame.groupby(self,by=None,...

  • 可视化图表

    基本用法 常用图表绘制 Pandas中的绘图函数

  • pandas.read_csv

    读取csv文件是遇到了pandas.read_csv函数。下面介绍下这个函数的用法。 pandas.read_cs...

  • pandas 常见用法

    一、生成数据表 1、首先导入pandas库,一般都会用到numpy库,所以我们先导入备用: 1 import nu...

  • Pandas 基础用法

    一个小例子,对一份电影数据文件作简单分析,并统计电影类别的出现次数 读入这份电影数据集: 取电影类别数据,并对Ge...

  • pandas基本用法

    1. 根据某列排序 df按照t这个字段排序 inplace默认为False,如果该值为False,那么原来的df顺...

  • pandas基本用法

    方法与操作 一维数组 TODO 二维数组 1.1操作excel 自建DataFram数据结构 读取excel 数据...

网友评论

      本文标题:pandas用法总结

      本文链接:https://www.haomeiwen.com/subject/rbwptqtx.html