我有这个DataFrame
Person Salary John 350Peter 543Susan 517Carl 448
我有另一个数据框,其中包含我必须对第一个数据框进行的更改
Attribute Change Person 3 Salary 2
“更改”的值应表示更改另一个字母(例如“ x”)显示的金额.结果应如下所示:
Person Salary Jxxx 3xx Pexxx 5xx Suxxx 5xx Cxxx 4xx
我该怎么办?最佳答案数据:
import pandas as pddf = pd.DataFrame({'Person':['John','Peter','Susan','Carl'],'Salary':[350,543,517,448]})change_df = pd.DataFrame({'Attribute':['Person','Salary'],'Change':['3','2']})
解决方案:
for col in df.columns: k = int(change_df[change_df.Attribute == col].Change) df[col] = df[col].apply(lambda x: str(x)[:len(str(x))-k]+k*'x')
结果:
Person Salary0 Jxxx 3xx1 Pexxx 5xx2 Suxxx 5xx3 Cxxx 4xx
总结 以上是内存溢出为你收集整理的python-根据Pandas中的其他信息更改数据框中列的一部分 全部内容,希望文章能够帮你解决python-根据Pandas中的其他信息更改数据框中列的一部分 所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)