2017-08-21 16 views
1

我試圖將字符串追加到df中的每個值。我想提高代碼速度(big df)。我試圖重寫代碼並使用列表理解,但我被卡住了。以下是我的代碼片段:如何將此代碼重寫爲列表理解

beginning ='begin ' #word on the beginning of the column 
c=list(df.columns) #list of all column in the dataframe 

for i in c: 
    df[i] = beginning + df[i].astype(str) 

有人可以幫我嗎?

+0

'df.columns'已經是一個列表,不需要再次調用'list'。 – DyZ

回答

5

只要將字符串添加到數據框。

下面是一個包含多個不同類型列的示例數據框。

In [823]: df 
Out[823]: 
    A B   C D 
0 A 1 2010-03-31 1.0 
1 B 2 2010-04-01 2.0 
2 C 3 2010-04-02 3.0 

轉換爲str類型並添加字符串。

In [824]: 'begin ' + df.astype(str) 
Out[824]: 
     A  B     C   D 
0 begin A begin 1 begin 2010-03-31 begin 1.0 
1 begin B begin 2 begin 2010-04-01 begin 2.0 
2 begin C begin 3 begin 2010-04-02 begin 3.0 
+0

Thx。因爲我是白癡:) – ertzuiop