Pandas 中三个对列转换的小操作
创作时间:
作者:
@小白创作中心
Pandas 中三个对列转换的小操作
引用
1
来源
1.
https://cloud.tencent.com/developer/article/1988986
本文主要介绍三个对列转换的小操作:
- split:按分隔符将列分割成多个列
- astype:转换列为其它类型
- 将对应列上的字符转换为大写或小写
创建 DataFrame
首先,导入 Pandas 模块,通过传入字典的方式创建 DataFrame。
import pandas as pd
mydict = {
"dev_id": ["001", "002", "003", "004"],
"name": ["John Hunter", "Lothar Muller", "John Doe", "Elon Brown"],
"age": [21, 33, 12, 40],
"salary": [10000, 5000, 12000, 3000],
"country": ["Gramany", "Germany", "United States", "Scotland"]
}
df_dev = pd.DataFrame(mydict)
df_dev.set_index("dev_id", inplace = True)
df_dev
- 使用 df_dev 中已经存在的列来创建 df_dev 的索引;
- "dev_id" 为索引命名;
- inplace = True 为原地操作,也就是说此次修改不会创建新的对象。
split 按分隔符将列分割成多个列
现在我们想要将 name 列划分成两个列,其中一个列为 first_name,另外一个列为 last_name。比如:John Hunter,他的 first_name 为 John,last_name 为 Hunter。我们可以使用 split 函数来实现上述功能。
df_new = df_dev["name"].str.split(" ", n = 1, expand = True)
df_dev.insert(0, "first_name", df_new[0])
df_dev.insert(1, "last_name", df_new[1])
df_dev.drop(columns = ["name"], inplace = True)
df_dev
- split 函数是 Series 的操作,全名为 Series.str.split,它可以根据给定的分隔符对 Series 对象进行划分;
- " " 按照空格划分,我们可以传入字符串或者正则表达式,如果不指定则按照空格进行划分;
- n = 1 分割数量,如果指定为 None, 0 或 -1 则返回所有分割。比如对于 "I am KangChen.":
- n = -1,则会返回 I, am, KangChen.
- n = 1,则会返回 I, am KangChen.
- n = 2,则会但会 I, am, KangChen.
- expand = True 将分割的字符串转换为单独的列,指定 True 则返回 DataFrame/MultiIndex,如果指定 False 则返回 Series/Index。
astype 转换列为其它类型
我们可以使用 astype() 将 age 列转换为字符串类型,将 salary 列转换为浮点型。
df_dev['age'] = df_dev['age'].astype(str)
df_dev['salary'] = df_dev['salary'].astype(float)
df_dev
将对应列上的字符转换为大写或小写
df_dev['country'] = df_dev['country'].str.upper()
df_dev
df_dev['country'] = df_dev['country'].str.lower()
df_dev
热门推荐
蓝绿藻的危害、监测手段及应对措施
如何挑选汽车火花塞?看看行业专家怎么说!
房屋租赁合同内容的详细要求
电信套餐退订指南:告别不用的套餐,节省话费更轻松
K18金是什么金?成分、特性与市场应用全解析
有胎心胎芽孩子就正常发育吗?
立冬养生之——超绝的萝卜配羊肉
苏州机场最新进展!设计方案曝光
【茶乡之窗】昌宁县:特色产业铺就民族团结致富路
使用邮件流规则检查邮件附件
如何顺应自然规律,更好的活着?
什麼是 FR-4:印刷電路板的首選材料
揭秘辣椒辣味的真正用途:保护种子还是方便传播?
经侦缓刑:探究非法经营案件的法律处理与执行
商标转让指南:流程、费用及注意事项全解析
敢不敢动手?AI绘画+表情包制作,7步搞定超萌表情!
转专业面试技巧:从准备到实战的全方位指南
【期货热点追踪】尿素主力合约直线拉升!春耕需求来袭,市场预期是否过于乐观?
小学法定年龄的法律问题研究
心梗救治日 | 我国每年新发心梗患者近100万,每分钟就有3人倒下
参苓白术散和什么搭配效果好
11种建立持久客户关系的有效方法
人工智能对未来职场的影响与应对策略
汽车功放音箱的正确连接方法及注意事项
人活着,把情绪管理好,很重要!
道家「十六锭金」逆腹式呼吸
车速仪表100,实际跑多快?听听老交警怎么说
商标权转让协议是什么?一文详解其定义、内容与注意事项
跟腱炎吃什么药能起到消炎作用
【圆肩驼背】原理、解决思路、矫正训练