pandas - 使用来自其他列的行的信息创建新列
问题描述
我已经准备了大量的数据框,其中包含来自 PDF 文件的信息。请在此处找到示例 PDF:https ://www.estv.admin.ch/dam/estv/de/dokumente/allgemein/Dokumentation/Zahlen_fakten/Steuerstatistiken/steuerbelastung_gemeinden/2010/Steuerbelastung%20in%20den%20Gemeinden%202010.pdf .download.pdf/2010_steuerbelastung_gemeinden_d.pdf
我的 Pandas 数据框将包含第 6 - 63 页的瑞士市政当局的税率(略去只有文本的页面)。
每个自治市都属于一个“州”。例如,在 p。6 所有城市都属于“Kanton Zürich”,如第一行所示。在页。7、大部分自治市属于“坎顿伯尔尼”。
我想使用 Canton 信息创建一个附加列(并删除 Canton 行)。
不幸的是,我不知道如何将 Canton 信息分配给各个城市。
解决方案
我找到了一个简单的解决方案。如果您有类似的问题,请参阅下文。
df['Kanton'] = df['Gemeinde'].str.contains('^Kanton|^Canton')
df.loc[df['Kanton'] == True, 'Kanton'] = df['Gemeinde']
df.loc[df['Kanton'] == False, 'Kanton'] = np.nan
df['Kanton'].fillna(method='ffill', inplace = True)
df = df[~df['Gemeinde'].str.contains('^Kanton|^Canton')]
推荐阅读
- javascript - JavaScript 命令:»如果 div 宽度 <500px ...«
- java - 如何修复代码以使输出为回文或不是回文
- windows - 如何在 Octave、Coursera ML 练习中修复“使用 curl() 提交的 [error] 未成功”?
- python - 使 tkinter 按钮的行为类似于 ENTER
- reactjs - 为什么我的图像无法正确上传到 AWS S3?
- c++ - C++ map[]= 内存分支
- php - 如何使用数据库中存储的数据检查选项底部
- android - 如何在 android studio 中添加电子商务购物车系统
- c++ - 在普通对象安全的任何上下文中,原子对象是否不安全?
- java - 如何修复“无法创建 ViewModel 类的实例”?