数据分析-Pandas类别数据序列合并
数据分析和处理中,难免会遇到各种数据,那么数据呈现怎样的规律呢?不管金融数据,风控数据,营销数据等等,莫不如此。如何通过图示展示数据的规律?
数据表,时间序列数据在数据分析建模中很常见,例如天气预报,空气状态监测,股票交易等金融场景。数据分析过程中重新调整,重塑数据表是很重要的技巧,此处选择Titanic数据,以及巴黎、伦敦欧洲城市空气质量监测 N O 2 NO_2 NO2数据作为样例。
数据分析
实验数据分析处理,股票序列,时间序列,信号序列,有时候表格的数据并不完全是数值类型,也有可能是字符串,或者其他数据,需要做分类处理。pandas如何控制数据分类处理呢?需要配置哪些参数?
数据梳理
优化的 pandas 的.loc
、.iloc
、.at
和 .iat
, 使得数据访问方式正常。唯一的区别是返回类型(用于获取),和可以赋值已有的数值。categories
分类数据的合并
默认情况下,合并相同类别的数据返回也是该类别。否则,返回结果是取决于两者的类别情况。
两个相同类别的序列合并
In [1]: from pandas.api.types import union_categoricals
# 类别相同
In [2]: s1 = pd.Series(["a", "b"], dtype="category")
In [3]: s2 = pd.Series(["a", "b", "a"], dtype="category")
In [4]: pd.concat([s1, s2])
Out[4]:
0 a
1 b
0 a
1 b
2 a
dtype: category
Categories (2, object): ['a', 'b']
两个不同类别的序列合并,变成普通序列
# 不同类别合并
In [5]: s3 = pd.Series(["b", "c"], dtype="category")
In [6 pd.concat([s1, s3])
Out[6]:
0 a
1 b
0 b
1 c
dtype: object
两个不同类别的序列合并,强制转换类别:
# 类型转换,输出类型通过类别进行推断
In [7]: pd.concat([s1, s3]).astype("category")
Out[7]:
0 a
1 b
0 b
1 c
dtype: category
Categories (3, object): ['a', 'b', 'c']
In [8]: union_categoricals([s1.array, s3.array])
Out[8]:
['a', 'b', 'b', 'c']
Categories (3, object): ['a', 'b', 'c']
两个数值类型的分类数据序列合并,自动推断类别
# 输出类型通过类别进行推断
In [1]: int_cats = pd.Series([1, 2], dtype="category")
In [2]: float_cats = pd.Series([3.0, 4.0], dtype="category")
In [3]: pd.concat([int_cats, float_cats])
Out[3]:
0 1.0
1 2.0
0 3.0
1 4.0
dtype: float64
序列拼接总结
下表总结类别数据的合并情况的结果:
arg1 | arg2 | 相同 | 结果 |
---|---|---|---|
类别 | 类别 | True | category |
类别(对象) | 类别(对象) | False | object(推断 dtype ) |
类别 (int) | 类别(浮动) | False | float (dtype 被推断) |
以上代码只是一个简单示例,示例代码中的表达式可以根据实际问题进行修改。
后面介绍下其他的展示形式。
觉得有用 收藏 收藏 收藏
点个赞 点个赞 点个赞
End
GPT专栏文章:
GPT实战系列-ChatGLM3本地部署CUDA11+1080Ti+显卡24G实战方案
GPT实战系列-LangChain + ChatGLM3构建天气查询助手
GPT实战系列-大模型为我所用之借用ChatGLM3构建查询助手
GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(二)
GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(一)
GPT实战系列-ChatGLM2部署Ubuntu+Cuda11+显存24G实战方案
GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF
标签:数据分析,实战,dtype,GPT,pd,类别,Pandas From: https://blog.csdn.net/Alex_StarSky/article/details/137021305