如何修改Pandas Column填充文本

时间:2016-10-07 12:40:55

标签: python-2.7 pandas

我正在尝试编辑充满文本的Pandas数据框列。基本上应用了一些编辑功能(切片,提取等)。

我正在使用编写函数并在列上应用map函数来完成该操作。     df ["花时间"] = df ["详情"]。map(somefunc)

然而,似乎我无法编辑文本,因为Pandas将数据类型存储在" object"不是"字符串"。

我尝试使用astype(str),但它仍然保持" object"。

如何完成此任务?

1 个答案:

答案 0 :(得分:1)

您可以通过将.str附加到系列名称来对Pandas系列执行字符串操作。以下是一些例子:

>>> df = pd.DataFrame([{'A': 'Label1', 'B': '$12.00'},
...                    {'A': 'Label2', 'B': '$14.00'},
...                    {'A': 'Label1', 'B': '$9.00'},
...                    {'A': 'Label2', 'B': '$8.00'}])
>>> df.B.str.replace('$','')
0    12.00
1    14.00
2     9.00
3     8.00
Name: B, dtype: object
>>> df.A.str[-1:]
0    1
1    2
2    1
3    2
Name: A, dtype: object
>>> df.A.str[1:]
0    abel1
1    abel2
2    abel1
3    abel2
Name: A, dtype: object
>>> df.B.str.len()
0    6
1    6
2    5
3    5
Name: B, dtype: int64

Pandas文档:Working with Text Data