数据分析-Pandas类型数据的CSV读写处理

本文详细介绍了如何使用Pandas处理不同类型的数据,包括将Categorical数据写入CSV并保持类别信息,以及从CSV读取后进行数据转换以恢复类别结构。涵盖了数据重塑、时间序列数据处理和类别数据的控制等内容。
摘要由CSDN通过智能技术生成

数据分析-Pandas类型数据的CSV读写处理

数据分析和处理中,难免会遇到各种数据,那么数据呈现怎样的规律呢?不管金融数据,风控数据,营销数据等等,莫不如此。如何通过图示展示数据的规律?

数据表,时间序列数据在数据分析建模中很常见,例如天气预报,空气状态监测,股票交易等金融场景。数据分析过程中重新调整,重塑数据表是很重要的技巧,此处选择Titanic数据,以及巴黎、伦敦欧洲城市空气质量监测 N O 2 NO_2 NO2数据作为样例。

数据分析

数据分析-Pandas如何转换产生新列

数据分析-Pandas如何统计数据概况

数据分析-Pandas如何轻松处理时间序列数据

数据分析-Pandas如何选择数据子集

数据分析-Pandas如何重塑数据表-CSDN博客

实验数据分析处理,股票序列,时间序列,信号序列,有时候表格的数据并不完全是数值类型,也有可能是字符串,或者其他数据,需要做分类处理。pandas如何控制数据分类处理呢?需要配置哪些参数?

您可以将包含类型数据的写入csv文件,也可以把数据从文件读取出来。

当写入CSV文件时,会把类别信息删除掉,包括类别和顺序,所以,当从csv文件读取回来的时候,就有必要做相关的转换操作。

写入类型数据到CSV文件

In [1]: import io
In [2]: s = pd.Series(pd.Categorical(["a", "b", "b", "a", "a", "d"]))

# 重命名类别 categories
In [3]: s = s.cat.rename_categories(["very good", "good", "bad"])
# 设置类别
In [4]: s = s.cat.set_categories(["very bad", "bad", "medium", "good", "very good"])
In [5]: df = pd.DataFrame({"cats": s, "vals": [1, 2, 3, 4, 5, 6]})
In [6]: csv = io.StringIO()
In [7]: df.to_csv(csv)


读取类型数据的CSV文件

In [8]: df2 = pd.read_csv(io.StringIO(csv.getvalue()))
In [9]: df2.dtypes
Out[9]: 
Unnamed: 0     int64
cats          object
vals           int64
dtype: object

# 数据是无类型数据
In [10]: df2["cats"]
Out[10]: 
0    very good
1         good
2         good
3    very good
4    very good
5          bad
Name: cats, dtype: object

# 类型转换
In [11]: df2["cats"] = df2["cats"].astype("category")
In [12]: df2["cats"] = df2["cats"].cat.set_categories(
   .....:     ["very bad", "bad", "medium", "good", "very good"]
   .....: )
   .....: 

In [13]: df2.dtypes
Out[13]: 
Unnamed: 0       int64
cats          category
vals             int64
dtype: object

In [14]: df2["cats"]
Out[14]: 
0    very good
1         good
2         good
3    very good
4    very good
5          bad
Name: cats, dtype: category
Categories (5, object): ['very bad', 'bad', 'medium', 'good', 'very good']

这套操作同样适用于 .to_sql 方法。

以上代码只是一个简单示例,示例代码中的表达式可以根据实际问题进行修改。

后面介绍下其他的展示形式。

觉得有用 收藏 收藏 收藏

点个赞 点个赞 点个赞

End

GPT专栏文章:

GPT实战系列-ChatGLM3本地部署CUDA11+1080Ti+显卡24G实战方案

GPT实战系列-LangChain + ChatGLM3构建天气查询助手

大模型查询工具助手之股票免费查询接口

GPT实战系列-简单聊聊LangChain

GPT实战系列-大模型为我所用之借用ChatGLM3构建查询助手

GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(二)

GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(一)

GPT实战系列-ChatGLM2模型的微调训练参数解读

GPT实战系列-如何用自己数据微调ChatGLM2模型训练

GPT实战系列-ChatGLM2部署Ubuntu+Cuda11+显存24G实战方案

GPT实战系列-Baichuan2本地化部署实战方案

GPT实战系列-Baichuan2等大模型的计算精度与量化

GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF

GPT实战系列-探究GPT等大模型的文本生成-CSDN博客

  • 24
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Alex_StarSky

你的鼓励是创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值