我有兩個不同的數據幀,我試圖比較。所以,我的第一個數據框有10行,第二個有2000個。我想要做的是將第一個df中的第一行與其他df中的所有2000相比較。然後對我的第一個df中的下一行執行相同的操作。循環播放兩個不同的熊貓數據幀
這是我目前的代碼。它通過第一個2000正常工作,然後當我應該增加它崩潰。
i = 1
j = 1
for u in userFrame.iterrows():
for d in dbFrame.iterrows():
if userFrame['tag'][i] == dbFrame['tag1'][j]:
print('Found one!:' + userFrame['tag'][i])
j += 1
i += 1
編輯:這裏是我得到的錯誤:
File "C:\Users\david\Desktop\CC Project\test.py", line 158, in Analyze
if userFrame['tag'][i] == dbFrame['tag1'][j]:
File "C:\Python34\lib\site-packages\pandas\core\series.py", line 557, in __getitem__
result = self.index.get_value(self, key)
File "C:\Python34\lib\site-packages\pandas\core\index.py", line 1790, in get_value
return self._engine.get_value(s, k)
File "pandas\index.pyx", line 103, in pandas.index.IndexEngine.get_value (pandas\index.c:3204)
File "pandas\index.pyx", line 111, in pandas.index.IndexEngine.get_value (pandas\index.c:2903)
File "pandas\index.pyx", line 157, in pandas.index.IndexEngine.get_loc (pandas\index.c:3843)
File "pandas\hashtable.pyx", line 303, in pandas.hashtable.Int64HashTable.get_item (pandas\hashtable.c:6525)
File "pandas\hashtable.pyx", line 309, in pandas.hashtable.Int64HashTable.get_item (pandas\hashtable.c:6463)
KeyError: 1644
將i,j重置爲外循環的每次迭代爲零?否則,我,j繼續無限增加 –