我正在尝试使用正则表达式从子字符串中提取美元金额。负数在字符串末尾带有“ CR”,表示负数。金额包含在一个单栏的csv文件中,标题为“说明”。以下是一些示例订单项:
CandleStickFeed
理想情况下,理想的结果是一个数据框,其中每个量都包含在带有以下标题的单独列中:“ Beg_bal”,“ Total_cr”,“ Total_db”,“ Net_ch”和“ Ending_bal” 我尝试了以下代码,但结果为“ nan”值:
description
Account Total: 26,458.16 7,476,744.04 7,484,287.03 7,542.99CR 18,915.17
Account Total: 27,218.61 7,719,293.26 7,740,051.63 20,758.37CR 6,460.24
Account Total: .00 7,634,750.07 39,055.35 7,595,694.72 7,595,694.72
Account Total: 64,249.00 .00 64,249.00 64,249.00CR .00
在此先感谢您,一如既往的帮助。
答案 0 :(得分:2)
您可以使用str.split
,删除前2列,因为它们包含“帐户”和“总计”:并根据需要重命名剩余的列
df_ = df['description'].str.split('\s+', expand=True).iloc[:, 2:]
df_.columns = ['Beg_bal', 'Total_cr', 'Total_db', 'Net_ch', 'Ending_bal']
print (df_)
Beg_bal Total_cr Total_db Net_ch Ending_bal
0 26,458.16 7,476,744.04 7,484,287.03 7,542.99CR 18,915.17
1 27,218.61 7,719,293.26 7,740,051.63 20,758.37CR 6,460.24
2 .00 7,634,750.07 39,055.35 7,595,694.72 7,595,694.72
3 64,249.00 .00 64,249.00 64,249.00CR .00
答案 1 :(得分:0)
您可以这样做:
expand-archive -path 'c:\docs\test3.zip' -destinationpath 'test3_Folder'