我想跨多個列過濾創建唯一值組合的數據幀的值。任何幫助,將不勝感激。通過跨多個列進行過濾來創建來自唯一值對的數據幀
這裏是我的代碼失敗(因爲數據幀DF):
dd = defaultdict(dict) #create blank default dictionary
values_col1 = df.col1.unique() #get the unique values from column 1 of df
for i in values_col1:
dd[i] = df[(df['col1']==i)] #for each unique value create a sorted df and put in in a dictionary
values_col2 = dd[i].col2.unique() #get the unique values from column2 of df
for m in values_col2:
dd[i][m] = dd[i][(dd[i]['col2']==m)] #for each unique column2 create a sub dictionary
當我運行它,我得到一個非常長的錯誤消息。我不會在這裏插入了整個事情,但這裏是它的一些:
C:\Anaconda3\lib\site-packages\pandas\indexes\base.py in get_loc(self, key, method, tolerance) 1944 try: -> 1945 return self._engine.get_loc(key) 1946 except KeyError:
...
ValueError: Wrong number of items passed 6, placement implies 1
瞭解numpy排列。 – Merlin