gpt4 book ai didi

python - 将 pandas DataFrame 列中括号之间的文本复制到另一列

转载 作者:太空宇宙 更新时间:2023-11-03 13:20:01 25 4
gpt4 key购买 nike

我正在尝试将 pandas DataFrame 列中括号之间出现的文本复制到另一列中。我遇到过这个解决方案来相应地解析字符串:Regular expression to return text between parenthesis

我想将结果逐个元素分配给新列中的同一行。但是,这不会直接转移到 pandas 系列。我似乎 map/apply/lambda 似乎是可行的方法。我已到达这段代码,但收到无效语法错误。

dataSources.dataUnits = dataSources.dataDescription.map(str.find("(")+1:str.find(")"))

显然,我在那里还不够流利 - 非常感谢帮助。

最佳答案

您可以使用建议的相同方法来申请 there :

In [11]: s = pd.Series(['hi(pandas)there'])

In [12]: s
Out[12]:
0 hi(pandas)there
dtype: object

In [13]: s.apply(lambda st: st[st.find("(")+1:st.find(")")])
Out[13]:
0 pandas
dtype: object

或者您可以使用其中一种系列字符串方法,例如replace :

In [14]: s.str.replace(r'[^(]*\(|\)[^)]*', '')
Out[14]:
0 pandas
dtype: object

丢弃 ( 之后的所有内容) 之前的所有内容。

从 0.13 开始,您可以使用 extract方法:

In [15]: s.str.extract('.*\((.*)\).*')
Out[15]:
0 pandas
dtype: object

关于python - 将 pandas DataFrame 列中括号之间的文本复制到另一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16842001/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com