我从一个美国系统得到数据。我在CSV中得到的数字是字符串“(100)”,我必须将其转换为-100整数。我在数据框中有N个列,我必须对所有列都这样做。你知道吗
我现在要做的是将所有括号替换为空和负值符号。这不是最好的解决方案,因为它正在转换数据帧中的所有给定值。你知道吗
import pandas as pd
df=pd.read_csv('American.csv', thousands=r',')
df=df.apply(lambda z: z.astype(str).str.replace(')',''))
df=df.apply(lambda z: z.astype(str).str.replace('(','-'))
我的期望:
"(100)" -> -100
"Nick (Jones)" ->"Nick **(Jones)**"
我得到的:
"(100)" -> -100
"Nick (Jones)" ->"Nick **-Jones**"
我需要一个代码,它可以对所有列的数字进行必要的转换,但不必考虑其他值。你知道吗
将^{} 与
regex=True
一起使用:输出:
正则表达式:
捕获一对括号(组#1)中任意数量的数字,并将
-
放在它前面(-组#1)。你知道吗相关问题 更多 >
编程相关推荐