大熊猫数据分析实用小技巧有哪些

  介绍

这篇文章给大家分享的是有关大熊猫数据分析实用小技巧有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

<强>小技巧1: <>强如何使用地图对某些列做特征工程?

先生成数据:

 d =, {“gender": [“male",,“female",,“male",“female"],“color": [“red",,“green",,“blue",“green"],“age":[25日,30日,15日,32)=}df  pd.DataFrame (d) df 

大熊猫数据分析实用小技巧有哪些

在,<代码>性别>

 d =, {“male": 0,,“female":, 1}
  df (“gender2"),=, df (“gender") . map (d) 

大熊猫数据分析5个实用小技巧

<强>小技巧2:使用替换和正则清洗数据

熊猫的强项在于数据分析,自然就少不了数据清洗。

一个快速清洗数据的小技巧,在某列上使用替代方法和正则,快速完成值的清洗。

源数据:

 d =, {“customer": [“A",,“B",,“C",,“D"],“sales": [1100,“950.5 rmb",,“400美元”,,“,“1250.75美元)}
  df =, pd.DataFrame (d) df 

打印结果:

 customer 销售
  0,A  11001, B  950.5元
  2,C  4003美元,D  

1250.75美元看到销售列的值,有整型,浮点型+元后变为字符串型,还有美元+整型,美元+浮点型。

我们的目标:清洗掉,元<代码> ,<代码> 美元符号,转化这一列为浮点型。

一行代码搞定:(点击代码区域,向右滑动,查看完整代码)

 df (“sales"),=, df (“sales") .replace(“(美元、人民币),,,,,,regex =,真的),\
  .astype (“float") 

使用正则替换,将要替换的字符放到列表中,<代码>(美元、人民币)> ““>

最后使用,<代码> astype>

打印结果:

 customer  sales0  A  1100.001, B  950.502, C  400.003, D  1250.75 

如果不放心,再检查下值的类型:

 df (“sales")苹果(类型)

打印结果:

 0, & lt; class  & # 39;浮动# 39;在1,& lt; class  & # 39;浮动# 39;在2,& lt; class  & # 39;浮动# 39;在3,& lt; class  & # 39;浮动# 39;在

【python学习交流群】

<强>小技巧3:使用融化如何对数据透视分析?

构造一个DataFrame:

 D =, {\“district_code":, (12345,, 56789,, 101112, 131415],“apple":, (5.2, 2.4, 4.2, 3.6),“banana":, (3.5, 1.9, 4.0, 2.3),“orange":, (8.0, 7.5, 6.4, 3.9]} df =, pd.DataFrame (d) df 

打印结果:

 district_code  apple  banana  orange0123455.23.58.01567892.41.97.521011124.24.06.431314153.62.33.9 

5.2表示12345区域的苹果价格,并且苹果,香蕉,橘子,这三列都是一种水果,那么如何把这三列合并为一列?

使用pd.melt

具体参数取值,根据此例去推敲:

 df =df.melt (\
  时间=id_vars “district_code",
  时间=var_name “fruit_name",
  时间=value_name “price")
  df 

打印结果:

 district_code  fruit_name  price012345  apple  5.2156789, apple  2.42101112, apple  4.23131415, apple  3.6412345, banana  3.5556789, banana  1.96101112, banana  4.07131415, banana  2.3812345, orange  8.0956789, orange  7.510101112, orange  6.411131415, orange  3.9 

以上就是长DataFrame,对应的原DataFrame是宽df。

<强>小技巧4:已知年和dayofyear,怎么转datetime吗?

原DataFrame

 d =, {\“year":, (2019,, 2019,, 2020],“day_of_year":, (350,, 365,, 1]=}df  pd.DataFrame (d) df 

打印结果:

<>之前,year  day_of_year   0201935012019365220201

转datetime的小技巧

步骤1:创建整数

 df (“int_number"),=df (“year") * 1000, +, df (“day_of_year") 

打印df结果:

 year  day_of_year  int_number
  0201935020193501201936520193652202012020001 

步骤2:to_datetime

 df [“date"]=pd.to_datetime (df (“int_number") format =,“Y % % j") 

注意“Y % % j"中转化格式j

打印结果:

<>之前,year  day_of_year  int_number 日期   0201935020193502019-12-161201936520193652019-12-3122020120200012020-01-01

<强>小技巧5:如何将分类中出现次数较少的值归为其他人呢?

大熊猫数据分析实用小技巧有哪些