我正在从美国系统获取数据。我在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('(','-'))
Run Code Online (Sandbox Code Playgroud)
我的期望:
"(100)" -> -100
"Nick (Jones)" ->"Nick **(Jones)**"
Run Code Online (Sandbox Code Playgroud)
我得到的是:
"(100)" -> -100
"Nick (Jones)" ->"Nick **-Jones**"
Run Code Online (Sandbox Code Playgroud)
我需要一个代码,用所有列的数字进行必要的转换,但又不打扰其他值。