如何获取数据框的列中的数字?

时间:2019-12-01 14:39:10

标签: pandas dataframe

我有下面的df,并且我只想取各列的数字(及其符号)。 原始df是:

               0     1       2          3      4          5  
0      ddd [ -03  62.0    16 ]   nal [  01 -49.0    00149 ]   
1      ddd [ -04  61.0    15 ]   nal [  00 -32.0    00209 ]   

,我想获得以下信息:

         0     1     2   3      4        5  
0      -03  62.0    16   01 -49.0    00149   
1      -04  61.0    15   00 -32.0    00209 

我该怎么办?

2 个答案:

答案 0 :(得分:1)

Series.str.extractDataFrame.apply一起用于DatFrame的所有列,以提取具有-值的浮点整数:

df = df.astype(str).apply(lambda x : x.str.extract(r'([-]?\d+\.*\d*)', expand=False))
print (df)
     0     1   2   3      4      5
0  -03  62.0  16  01  -49.0  00149
1  -04  61.0  15  00  -32.0  00209

答案 1 :(得分:1)

这可能对您有用:

import pandas as pd

df = pd.DataFrame({'Data': ['Tres3', 'Acht8', 'SevenTwo72']})
df['Data'] = df['Data'].map(lambda x: ''.join([i for i in x if i.isdigit()]))`

#Returns: 
#3
#8
#72