python - Pandas 转换为大写会产生额外的一行
问题描述
我有一个熊猫数据框:df:
id name
1 abc
我愿意:
df['name'] = df['name'].str.upper()
我得到一个重复的行:
id name
1 ABC
nan ABC
到底是怎么回事?
解决方案
问题是观察到的问题在孤立的代码示例中是不可重现的。问题中显示的内容表明程序代码是正确的。因此,未描绘的输入数据存在问题。
下面这个 MCVE(How to make good reproducible pandas examples)表明没有问题:
import pandas as pd
df = pd.DataFrame({'id':[1], 'name': ['abc']})
print df
df['name'] = df['name'].str.upper()
print df
python mcve.py
id name
0 1 abc
id name
0 1 ABC
上面的示例显示了一个输入 DataFrame
id name
1 abc
哪个可能不是 DataFrame?
推荐阅读
- node.js - 以太坊使用 web3.js 发送今天不工作(结果是失败)
- javascript - 如何用值替换“$id”?
- php - PHP时间特定的div显示
- blockchain - 以太坊 geth 无法连接到 bootnode 以访问私有以太坊网络
- r - R / quastrat / applyStrategy
- javascript - 角度:EventEmitter 在嵌入式组件中未定义
- apache - 通过 Maven 安装 Apache Stanbol
- xamarin - Xamarin Forms - iOS 上的键盘覆盖条目(文本字段)
- r - 如何找到按R中的因子排序的列的最大值?
- optimization - 优化 Google Apps 脚本中的读/写