удаление пробелов управляющих символов из фрейма данных

#python #list #pandas #replace #dataframe

#python #Список #панды #заменить #фрейм данных

Вопрос:

У меня есть dataframe df, с помощью которого я получаю список списка, используя это

 data = [list(map(str,n.tolist())) for n in df.values]
  

после этого я заменяю конкретный управляющий символ из данных следующим образом

 data = [ [e.replace(u'xa0', u'') for e in tempval ] for tempval in data ]
  

Это работает нормально, но я хочу, чтобы это было сделано в самом фрейме данных, пожалуйста, предложите что-нибудь.

Ответ №1:

Вы можете использовать DataFrame.replace :

 df = pd.DataFrame({'A':['xa0','s','w'],
                   'B':['s','w','v'],
                   'C':['e','d','xa0']})

print (df)
   A  B  C
0     s  e
1  s  w  d
2  w  v  
  

Затем для создания list lists преобразования DataFrame в numpy array by values и затем tolist :

 df.replace(u'xa0',u'', regex=True, inplace=True)
#if need cast all values to str add astype
print (df.astype(str).values.tolist())
[['', 's', 'e'], ['s', 'w', 'd'], ['w', 'v', '']]