建站教程

建站教程

Products

当前位置:首页 > 建站教程 >

这是我见过最全面的pandas用法!太详细了!

GG网络技术分享 2025-03-18 16:09 3


一、生成数据表

1、首先导入pandas库,一般都会用到numpy库,所以我们先导入备用:

import numpy as np

import pandas as pd

2、导入CSV或者xlsx文件:

df = pd.DataFrame(pd.read_csv(city.csv,header=1))

df = pd.DataFrame(pd.read_excel(city.xlsx))

3、用pandas创建数据表:

df = pd.DataFrame({"id":[1,2,3,4,5,6],

"date":pd.date_range(20130102, periods=6),

"city":[Beijing , SH, guangzhou , Shenzhen, shanghai, BEIJING ],

"age":[23,44,54,32,34,32],

"category":[100-A,100-B,110-A,110-C,210-A,130-F],

"price":[1200,np.nan,2133,5433,np.nan,4432]},

columns =[id,date,city,category,age,price])

2、数据表信息查看

1、维度查看:

df.shape

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

df.info()

3、每一列数据的格式:

df.dtypes

4、某一列格式:

df[B].dtype

5、空值:

df.isnull()

6、查看某一列空值:

df.isnull()

7、查看某一列的唯一值:

df[B].unique()

8、查看数据表的值:

df.values

9、查看列名称:

df.columns

10、查看前10行数据、后10行数据:

df.head() 默认前10行数据

df.tail() 默认后10 行数据

三、数据表清洗

1、用数字0填充空值:

df.fillna(value=0)

2、使用列prince的均值对NA进行填充:

df[prince].fillna(df[prince].mean())

3、清除city字段的字符空格:

df[city]=df[city].map(str.strip)

4、大小写转换:

df[city]=df[city].str.lower()

5、更改数据格式:

df[price].astype(int)

6、更改列名称:

df.rename(columns={category: category-size})

7、删除后出现的重复值:

df[city].drop_duplicates()

8、删除先出现的重复值:

df[city].drop_duplicates(keep=last)

9、数据替换:

df[city].replace(sh, shanghai)

四、数据预处理

df1=pd.DataFrame({"id":[1,2,3,4,5,6,7,8],

"gender":[male,female,male,female,male,female,male,female],

"pay":[Y,N,Y,Y,N,Y,N,Y,],

"m-point":[10,12,20,40,40,40,30,20]})

1、数据表合并

df_inner=pd.merge(df,df1,how=inner) 匹配合并,交集

df_left=pd.merge(df,df1,how=left)

df_right=pd.merge(df,df1,how=right)

df_outer=pd.merge(df,df1,how=outer) 并集

2、设置索引列

df_inner.set_index(id)

3、按照特定列的值排序:

df_inner.sort_values(by=[age])

4、按照索引列排序:

df_inner.sort_index()

5、如果prince列的值

标签:

提交需求或反馈

Demand feedback