当前位置: 首页 > 面试题库 >

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

相旭
2023-03-14
问题内容

我正在尝试将出现在熊猫DataFrame列中括号之间的文本复制到另一列中。我遇到过这种解决方案来相应地解析字符串:正则表达式以在括号之间返回文本

我想将结果按元素分配给新列中的同一行。但是,这不会直接延续到熊猫系列。我似乎map / apply /
lambda似乎是要走的路。我到了这段代码,但是收到了无效的语法错误。

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

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


问题答案:

您可以使用此处建议的相同方法来应用:

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

或者,您可以使用Series字符串方法之一,例如replace

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

丢弃所有内容,然后再包含(所有内容)

从0.13开始,您可以使用提取方法

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


 类似资料:
  • 问题内容: 如何将值从一列复制到另一列?我有: 我希望有: 我应该有哪些mysql查询? 问题答案: 有关代码的简短答案是: 这是表名,周围是重音符号(又称“-”),因为这是MySQL惯例,用于转义关键字(在这种情况下为关键字)。 请注意,这是非常危险的查询,它将擦除表每行中列中的所有内容,并替换为(无论其值如何) 使用子句将查询限制为仅特定的行集更为常见:

  • 问题内容: 是否可以将SQL中表中的所有记录的数据从A列复制到B列? 问题答案: 这个怎么样 这将更新每一行。

  • 问题内容: 我正在研究数据结构和链表,但是我没有得到如何制作链表副本的概念。有人可以使用伪代码或C代码进行解释吗? 问题答案: 复制链表的逻辑是递归的,并且基于以下观察结果: 空列表的克隆是空列表。 具有第一个节点x和其余节点xs的列表的克隆是x的副本,该副本位于xs的克隆之前。 如果您使用C ++对链表进行编码,则可以很干净:

  • 在Javascript中,我希望得到一个字符串,表示两个括号之间的所有文本,即使该字符串包含更多的括号。 其工作如下: "(a)(b)(c)"。匹配(某物); [“a”、“b”、“c”] 或者 “a” “((a)(b)(c))”。匹配(某物); (a)(b)(c)

  • 我需要在和之间匹配文本示例: 我需要匹配这个文本 简单正则表达式将正常工作,直到我在文本中放置一些 文本内的卷括号配对以匹配。 有没有可能通过正则表达式来解决这个问题?

  • 我主要在RPC模式下使用rabbitMq,但我还想将请求和响应消息复制到另一个队列。 最后,我想实现的是,外部消费者可以通过听一个队列来查看所有流量,我们称之为“日志队列”。 复制传入消息是可以的,我只需要使用扇出交换,或者使用与RPC调用使用的路由密钥相同的路由密钥将日志队列绑定到使用过的交换。 但我无法找到通过直接回复功能“扇出”发送的消息的方法。 到目前为止,我了解到响应消息以amqp的形式