我的编程空间,编程开发者的网络收藏夹
学习永远不晚

pandas如何将表中的字符串转成数值型

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

pandas如何将表中的字符串转成数值型

pandas将表中的字符串转成数值型

在用pd.read_csv读数据时,将要转换数据类型的列名和类型名构成字典,传给dtype

import numpy as np
import pandas as pd

path = 'house_data.csv'
col = ['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS',
       'RAD', 'TAX', 'PTRATIO', 'B', 'LSTAT', 'MEDV']
dict_dtype = {}
for i in col:
    dict_dtype[i] = np.float64
# print(dict_dtype)

data = pd.read_csv(path, header=None, names=col, sep=',', dtype=dict_dtype)

扩展:pandas 把某一列中字符串变数值_Pandas对文本数据处理

在处理数据的时候,对数值型的数据处理还是比较方便的,但是有时候数值型数据出现问题后就会比较头痛了,因为文本数据的排列组合可是有很多很多的,今天我们就学习一下如何对文本数据进行处理,这样我们接下来在工作中遇到了这些情况就可以少掉一下头发啦。

d6bd631540ae5adc7303155bc4b9cb85.png

一、str属性

文本数据也就是我们常说的字符串,pandas为series提供了str属性,通过它可以方便对每个元素进行操作。

6745e03b9537f5557abb6c0a116c4c07.png

为了防止数据被弄坏,我们先预留一个备份以防万一。

ba57e33cd69be5f6919a6a70dc069900.png

这里我们是不能使用backup_user_info = user_info的因为这样的话一个更改另外一个也会更改。

在之前我们也已经了解过,在对series中每个元素处理时,我们可以使用map或apply方法,比如我们想把星球列下面的地球和外星转换为英文,可以使用下面的方式。

ef74a725f5adca534b91811afe5bcee7.png

这时候我们在将表恢复成原来的样子。

f3b59a5363a218112529585f9ec76c70.png

将哪个星球列下的星球改为大写的英文后再改为小写

首先更改为英文

50b5b03abf1fe33377d65a3948c58ab1.png

然后设置一个函数,将星球改为大写,原理为upper()方法

439070f60a92fb0fd4f7c78f5145a508.png

然后在设置为小写,原理为lower方法

00867bdb1c4aac307a06e8ece7f46d8e.png

给英雄们的身高加上一个单位

759c84a81f3d343533c050b45b0b6d99.png

我们通过str属性来访问之后用到的方法名与 Python 内置的字符串的方法名一样。并且能够自动排除缺失值。 我们再来试试其他一些方法。例如,统计每个字符串的长度。

1ef5ccab75b28076181666e8c615e6bb.png

将cm替换成空白的字符串

401054c7a864ff075d51504e8b81151b.png

将身高列的元素类型转换为整数型

335ffc1b7a85123946579d4a1cc6c41a.png

生成一个新的列,列名为姓名的长度,元素为英雄姓名的长度(len方法)

9db7a72ded0cb716db93eec73ef7b7e4.png

查看表的元素类型

60c6eac27d95ee99b588f29b209e40b2.png

将年不年轻列的中的中年属性更改为中老年属性

2a8282b1614c7277ab2d14d9e01f9463.png

查看城市列中每个元素有几个字

1264c815cd0542a7d36db6ff4ba6d521.png

查看年不年轻列中每个元素是否有轻这个字符串

006f75a40f8e66b03756a0df47074417.png

二、替换和分隔

使用.srt属性也支持替换与分割操作。先来看下替换操作,例如:将大写的R转换为小写的r。

b20594f6b59eccc66edf7d91057687e7.png

将列中的数据进行分隔

fe10ba58be3c1c2f2bb2aed254d782d0.png

将是否年轻按年进行分隔,结果如上所述。

分割列表中的元素可以使用 get 或 [] 符号进行访问:

19f5bb6c2c6b31a4443d807530ea7b4a.png

比如说电影的主演有很多人, 可能是用逗号, 或者/ 进行分割, 这是可以用这种方法转换成列表

在表中添加一列英雄的爱人列

3cf0f3bdd9ec5d85543176863542c034.png

d37b4f554921e38f11e80050b9cd61d6.png

将爱人列以,号分隔

11330ea22e91097123b1c4cafa9a30dc.png

这时候就可以让某一行的这个元素以列表表现出来。

edf1dfef1f560778c626940d1b2c2e53.png

将索引列改为英雄姓名,并查看蜘蛛侠和灭霸的爱人

7564f3c246ff8e7ccbabe110a0ecd29e.png

三、提取子串

既然是在操作字符串,很自然的大家可能会想到是否可以从一个长的字符串中提取出子串。答案是可以的。

1、提取第一个匹配的子串

extract方法接受一个正则表达式并至少包含一个捕获组,指定参数 expand=True可以保证每次都返回DataFrame。例如,现在想要匹配空字符串前面的所有的字母,可以使用如下操作:

查看哪位英雄的所在的星球包括E这个字符串

5e9d5f78c0445b021835d6cf8e90442d.png

查看哪位英雄所在的城市包括纽这个字符串

dae950b0041d92a9896f597a8017256d.png

四、生成哑变量

首先我们先了解一下什么是哑变量:

哑变量原名为虚拟变量 ( Dummy Variables) 又称虚设变量、名义变量或哑,用以反映质的属性的一个人工变量,是量化了的自变量,通常取值为0或1。引入哑变量可使线形回归模型变得更复杂,但对问题描述更简明,一个方程能达到两个方程的作用,而且接近现实。

在pandas中我们可以通过get_dummies 方法可以将字符串转为哑变量,sep 参数是指定哑变量之间的分隔符。

abad364dc2ba52e61f9fc9c571eb4932.png

对英雄姓名进行哑变量转换

392e5d24bc47e42d55673cc00cc9393c.png

从结果可以看出,第0行的英雄姓名是蜘蛛侠,第1行的英雄姓名是灭霸,哑变量转换就是将每一个选择匹配哪一行的数据。

对那个星球进行哑变量转换

806b2314b72e655803ec43f5a495dcee.png

从结果可以看出,在地球的英雄是第0、2、3、4、6行的,对应的英雄名称为(蜘蛛侠、奇异博士、钢铁侠、蝙蝠侠、黑寡妇)

到此这篇关于pandas将表中的字符串转成数值型的文章就介绍到这了,更多相关pandas字符串转成数值型内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

pandas如何将表中的字符串转成数值型

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

pandas如何将表中的字符串转成数值型

在用pd.read_csv读数据时,将要转换数据类型的列名和类型名构成字典,传给dtype,怎么转换呢,下面小编给大家分享下pandas将表中的字符串转成数值型,感兴趣的朋友一起看看吧
2023-02-21

pandas怎么将表中的字符串转成数值型

今天小编给大家分享一下pandas怎么将表中的字符串转成数值型的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。pandas将表
2023-07-05

php如何将值转型成字符串

这篇“php如何将值转型成字符串”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“php如何将值转型成字符串”文章吧。转换方法:
2023-06-29

javascript中如何将值转为字符串类型

这篇文章将为大家详细讲解有关javascript中如何将值转为字符串类型,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。javascript中将值转为字符串的方法:1、使用toString()方法,语法“变
2023-06-14

javascript中如何将字符串转换成数字

这篇文章主要介绍了javascript中如何将字符串转换成数字问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-02-10

mysql中如何将字符串转换成数字

在MySQL中,可以使用CAST函数或者将字符串与0相乘的方式将字符串转换为数字。使用CAST函数:SELECT CAST(123 AS SIGNED);将字符串与0相乘:SELECT 123 * 1;以上两种方法都可以将字符串’123
mysql中如何将字符串转换成数字
2024-05-13

php中如何将字符串转化成字符数组

本文小编为大家详细介绍“php中如何将字符串转化成字符数组”,内容详细,步骤清晰,细节处理妥当,希望这篇“php中如何将字符串转化成字符数组”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。在php中,可以使用str
2023-06-29

vb中怎么将字符串转换成数值

在VB中,可以使用`CInt()`函数将字符串转换为整数,使用`CDbl()`函数将字符串转换为双精度浮点数,使用`CDec()`函数将字符串转换为十进制数。此外,还可以使用`Val()`函数将字符串转换为数值(整数或浮点数)。下面是一些示
2023-10-11

mysql如何将字符串转换成数字

要将 mysql 中的字符串转换为数字,可以使用以下方法:convert() 函数:select convert(my_string, unsigned integer);cast() 函数:select cast(my_string as
mysql如何将字符串转换成数字
2024-06-14

php中如何将数字字符串转化数字类型

这篇文章主要介绍了php中如何将数字字符串转化数字类型的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php中如何将数字字符串转化数字类型文章都会有所收获,下面我们一起来看看吧。转化方法:1、使用intval()
2023-06-29

php如何将浮点型转换成字符串

本篇内容主要讲解“php如何将浮点型转换成字符串”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php如何将浮点型转换成字符串”吧!php将浮点型转换成字符串的方法:1、创建一个PHP示例文件;2
2023-06-25

php字符串如何转换成数值

这篇文章主要讲解了“php字符串如何转换成数值”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php字符串如何转换成数值”吧!PHP类型转换函数PHP提供了几个内置的类型转换函数,用于将不同类
2023-07-05

php如何将值强制转为字符串类型

这篇文章给大家分享的是有关php如何将值强制转为字符串类型的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在php中,可以利用强制类型转换,即在要转换的变量或值之前加上用括号括起来的目标类型“(string)”来将
2023-06-15

stata字符型数据如何转成数值型

stata字符型数据转数值型的方法:1、destring命令,语法“destring 变量名, 生成新变量名 选项”;2、real函数,语法“generate 新变量名 = real(字符型变量名)”;3、encode和decode命令,语
2023-08-18

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录