Python pandas 数据无法正常分列

2023-11-01 23:20

本文主要是介绍Python pandas 数据无法正常分列,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在数据处理时,有时需要对数据进行分列,类似于Excel里面的分列功能,这个在pandas里面也可以实现,下面就来详细介绍相关的方法及注意点,前提是你已经对pandas有一定的了解

导入数据

这里介绍的是从Excel导入数据,当然也可以从其他文件导入、数据库查询后导入等,为了弄清楚里面的细节,本教程从Excel导入数据

import pandas as pd
import numpy as npdata=pd.read_excel('split.xlsx')

查看原始数据及各列数据类型,可以看到指标、选项都是object类型,其中选项列没有缺失值

原始数据.png

对选项列进行分列

对导入的原始数据进行分列,这里运用的是pandas.Series.str.split方法,可以理解为把Series作为字符串进行分列操作,分列都是对字符串进行操作的

split_data=data['选项'].str.split(':',expand=True)   #需要添加expand=True,使分列后的数据扩展为一个数据框
split_data
原始数据分列.png

可以明显看到分列后的数据,第1、5、6索引行全是缺失值,对比上面的原始数据,这些都是只有一个数字,难道分列方法split对只有一个数字不能分列吗?其实则并不然,实际的原因请往下看

寻找原因

查看Excel里面的数据寻找原因,发现选项所在列,单个数字在Excel单元格是数字,其他的都是文本,因Excel里面数字一般都是在单元格里面都是靠右对齐,而文本都是靠左对齐

Excel数据.png

但是pandas导入数据后,已经查看了选项列为object类型,难道判断的数据类型有问题?请继续往下看

强制转换数据类型,再次分列

data['选项']=data['选项'].astype('str')
#data['选项']=data['选项'].astype('object')     #这两个代码都可以转换split_data=data['选项'].str.split(':',expand=True)
split_data
数据类型转换后再分列.png

可以看到已经成功进行分列了, 说明pandas读取的数据,判断出来的数据类型并不一定是这一列所有数据的真实类型,而是能概括所有类型的一个较大的类型(兼容所有类型),并没有强制转换为同一个数据类型,比如选项列,里面有数值型、字符串型,那么较大的一个类型是object,pandas及认为该列数据类型是object

合并数据

split_data.columns=['s_1','s_2','s_3','s_4']
data.join(split_data)   #join比较方便,根据索引直接对两个表进行链接,而merge需要设置链接时的字段
成功分列后数据.png

分列时注意事项

1.导入数据后一定要检查数据类型,不要急着去处理
2.分列前检查该列数据类型,确保该列数据类型都是字符串类型,或者object类型,当数据量很大的时候这个很容易出错

pandas里面数据类型对照

详情请参考这篇博文,数据处理过程的数据类型

数据类型.jpg

http://www.taodudu.cc/news/show-8125954.html

相关文章:

  • 多级雷达图绘制python_多的解释|多的意思|汉典“多”字的基本解释
  • 计算机和医学交叉的研究方向,医学3D计算机视觉:研究进展和挑战
  • 基于ESP32与AD9850的信号发生器
  • AD9208/AD9689/AD6688采集和AD9172/AD9174/AD9176回放FMC
  • 大数据面试题目汇集
  • BloomFilter 简介及在 Hadoop reduce side join 中的应用
  • Hive 基础之:分区、桶、Sort Merge Bucket Join
  • 分区、桶、Sort Merge Bucket Join
  • Go 微服务基础:Protobuf gRPC
  • VS Code 整活:100行代码写一个悬浮翻译插件
  • 新简历欢迎有经验者拍砖
  • 0-1规划下的数独问题
  • c++程序求解9X9数独
  • MySQL需要掌握到什么程度,才有机会进入大厂?来看清华大佬推荐文档
  • 35岁程序员的毕业季?大厂花式裁员着实厉害……
  • 又一家在线教育巨头要裁员跑路?
  • 如何面对“裁员门” ——IT雇员保住工作的十条黄金法则
  • 如何面对“裁员门” ——IT雇员保住工作的十条黄金法则 【转】
  • 如何面对裁员门:IT雇员保住工作的十条黄金法则
  • 百度裁员门:裁员过程录音曝光
  • 即使与大众合作,陷入“裁员门”的滴滴仍然前途未卜
  • 与计算机安全相关的是,计算机信息安全与保密工作论文
  • 公司员工薪资保密的重要性
  • 计算机信息安全保密审计,审计处网络信息安全保密管理工作细则
  • 计算机安全与保密技术论文,计算机信息安全与保密工作论文.doc
  • 绘本图书租售小程序版v1.0.0绘本 绘本馆 图书借阅
  • 【独家源码】ssm绘本馆管理系统n5wn5应对计算机毕业设计困难的解决方案
  • 儿童绘本馆图书借阅租赁知识付费小程序源码交流
  • 详解DevOps 在企业云安全管理中发挥作用的8大方式
  • 计算机毕业设计ssm钓鱼爱好者交流平台4qn0e系统+程序+源码+lw+远程部署
  • 这篇关于Python pandas 数据无法正常分列的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



    http://www.chinasem.cn/article/326467

    相关文章

    Conda与Python venv虚拟环境的区别与使用方法详解

    《Conda与Pythonvenv虚拟环境的区别与使用方法详解》随着Python社区的成长,虚拟环境的概念和技术也在不断发展,:本文主要介绍Conda与Pythonvenv虚拟环境的区别与使用... 目录前言一、Conda 与 python venv 的核心区别1. Conda 的特点2. Python v

    Python使用python-can实现合并BLF文件

    《Python使用python-can实现合并BLF文件》python-can库是Python生态中专注于CAN总线通信与数据处理的强大工具,本文将使用python-can为BLF文件合并提供高效灵活... 目录一、python-can 库:CAN 数据处理的利器二、BLF 文件合并核心代码解析1. 基础合

    Python使用OpenCV实现获取视频时长的小工具

    《Python使用OpenCV实现获取视频时长的小工具》在处理视频数据时,获取视频的时长是一项常见且基础的需求,本文将详细介绍如何使用Python和OpenCV获取视频时长,并对每一行代码进行深入解析... 目录一、代码实现二、代码解析1. 导入 OpenCV 库2. 定义获取视频时长的函数3. 打开视频文

    SQL Server配置管理器无法打开的四种解决方法

    《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S

    Python中你不知道的gzip高级用法分享

    《Python中你不知道的gzip高级用法分享》在当今大数据时代,数据存储和传输成本已成为每个开发者必须考虑的问题,Python内置的gzip模块提供了一种简单高效的解决方案,下面小编就来和大家详细讲... 目录前言:为什么数据压缩如此重要1. gzip 模块基础介绍2. 基本压缩与解压缩操作2.1 压缩文

    MySQL 删除数据详解(最新整理)

    《MySQL删除数据详解(最新整理)》:本文主要介绍MySQL删除数据的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、前言二、mysql 中的三种删除方式1.DELETE语句✅ 基本语法: 示例:2.TRUNCATE语句✅ 基本语

    Python设置Cookie永不超时的详细指南

    《Python设置Cookie永不超时的详细指南》Cookie是一种存储在用户浏览器中的小型数据片段,用于记录用户的登录状态、偏好设置等信息,下面小编就来和大家详细讲讲Python如何设置Cookie... 目录一、Cookie的作用与重要性二、Cookie过期的原因三、实现Cookie永不超时的方法(一)

    Python内置函数之classmethod函数使用详解

    《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

    Python函数作用域示例详解

    《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

    Python实现对阿里云OSS对象存储的操作详解

    《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os