希望下面的作品你所期望的
import pandas as pd
import numpy as np
x = str(np.arange(1,100))
df = pd.DataFrame([x,x,x,x])
df.columns = ['words']
print 'sample'
print df.head()
result = df['words'].apply(lambda x:
np.fromstring(
x.replace('\n','')
.replace('[','')
.replace(']','')
.replace(' ',' '), sep=' '))
print 'result'
print result
輸出如下
sample
words
0 [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...
1 [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...
2 [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...
3 [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...
result
0 [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, ...
1 [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, ...
2 [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, ...
3 [1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, ...
這是不優雅調用替換功能這麼多次。但是我沒有找到更好的方法。無論如何,它應該可以幫助你將字符串轉換爲矢量。
一個方面的說明,因爲數據顯示在圖片中,您最好檢查您的數據分隔是通過空間還是製表符來完成。如果是選項卡,請將sep =''更改爲sep ='\ t'
利用我們可以嘗試的數據示例。 – MedAli
@MedAli最好的辦法是什麼?我不確定這個過程是否生成了這種格式,我怎樣才能將數據框的樣本上傳到stackoverflow? – Matt