2017-05-05 44 views
-1

因此,即使在將我的集合轉換爲列表之後,它們也不會被識別爲列表。即使在轉換後,列表仍被視爲集合

所以這個想法是刪除數據框中的額外列與另一列中的列進行比較。我有兩個數據幀,說df_test和df_train。我需要刪除df_test中不在列車中的列。

extracols = set(df_test.columns) - set(df_train.columns) #Gives cols 2b 
                  deltd 
l = [extracols]  # or list(extracols)               
Xdp.dropna(subset = l, how ='any' , axis = 0) 

我得到一個錯誤:Unhashable類型設置 即使在打印l在打印像一組與{}花括號。

+1

你能否提供更多的代碼給你提供更好的上下文的片段。另外,你能否讓你的問題更清楚。問候! – MorrisLaw

回答

1

[{set}]不會轉換爲列表,它只是創建一個長度爲1的列表。

您確定列表({set})不適合您嗎?也許你應該發佈更多的代碼,因爲很難看出你的錯在哪裏。

+0

cols_test = df_test.columns cols_train = df_train.columns extracols =設定(cols_test) - 集(cols_train) 升=列表(extracols) Xdp.dropna(子集= 1,如何= '任意',軸= 0) – Kris