系统:Windows 7 语言版本:Anaconda3-4.3.0.1-Windows-x86_64 编辑器:pycharm-community-2016.3.2 pandas:0.19.2
Part 1:目标
修改前后文件名
Part 2:代码
import pandas as pd
dict_1 = {"file_name": ["P10-CD1.txt", "P252-12EF.pdf", "P369-96BD.txt",
"P4-G852F.pdf", "P5-H225D.txt", "P657-36LF.pdf"],
"order_id": [1, 2, 3, 4, 5, 6]}
df_1 = pd.DataFrame(dict_1, columns=["file_name", "order_id"])
print("初始DF:\n", df_1)
print("\n")
df_2 = df_1["file_name"].str.split("-", expand=True)
df_2.columns = ["文件名", "其它"]
print("获取新的文件名:\n", df_2)
print("\n")
df_3 = df_1["file_name"].str.split(".", expand=True)
df_3.columns = ["其它", "文件类型"]
print("获取文件类型:\n", df_3)
print("\n")
se_1 = df_2["文件名"] + "." + df_3["文件类型"]
print("新的文件名:\n", se_1)
print(type(se_1))
print("\n")
df_1["new_file_name"] = se_1
print("加入新的文件名:\n", df_1)
print(type(df_1))
代码截图
执行结果
Part 3:部分代码解读
df_2 = df_1["file_name"].str.split("-", expand=True)
,对列file_name的每个元素实行split("-")
操作,理论上生成一个列表,expand=True
表示将生成列表结果分为多个列se_1 = df_2["文件名"] + "." + df_3["文件类型"]
,实现两个Df之间对应每个元素的字符串连接操作,生成一个Series
对象df_1["new_file_name"] = se_1
,df_1新增一列new_file_name本文为原创作品
本文分享自 Python及Django网站开发 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有