1
所以我有一段代碼是迭代通過數據框切換到元組,然後遍歷每個值後的第一個。昨天一切正常,但今天,對於某些行,它不排除第一個索引,我不知道爲什麼。for循環後,特定的索引與python不工作
下面是代碼:
for rows in data.itertuples():
r = int(rows[0]) + 1
for i in rows[1:]:
c = rows.index(i)
print r, i, c, int(rows.index(i)), rows
我複製打印輸出前2行的迭代。第一行工作完美。第二行有一個問題。我們所期望的是,對於第一個元素來說,c會被設置爲1,而第一個元素將會被設置爲1,但是它會是0.這是在數據幀的行中隨機發生的。有沒有人有任何想法爲什麼for循環沒有跳過第一個元素?
1 3 1 1 (0, 3, 27000, '1060', 'QMS', 'TEST', 'DAY', 'LMT')
1 1 3
1 27000 2 2 (0, 3, 27000, '1060', 'QMS', 'TEST', 'DAY', 'LMT')
1 2 27000
1 1060 3 3 (0, 3, 27000, '1060', 'QMS', 'TEST', 'DAY', 'LMT')
1 3 1060
1 QMS 4 4 (0, 3, 27000, '1060', 'QMS', 'TEST', 'DAY', 'LMT')
1 4 QMS
1 ARCA 5 5 (0, 3, 27000, '1060', 'QMS', 'TEST', 'DAY', 'LMT')
1 5 ARCA
1 DAY 6 6 (0, 3, 27000, '1060', 'QMS', 'TEST', 'DAY', 'LMT')
1 6 DAY
1 LMT 7 7 (0, 3, 27000, '1060', 'QMS', 'TEST', 'DAY', 'LMT')
1 7 LMT
**2 1 0 0 (1, 1, 3500, '1060', 'QMS', 'TEST', 'DAY', 'LMT')**
2 0 1
2 3500 2 2 (1, 1, 3500, '1060', 'QMS', 'TEST', 'DAY', 'LMT')
2 2 3500
2 1060 3 3 (1, 1, 3500, '1060', 'QMS', 'TEST', 'DAY', 'LMT')
這工作完全,謝謝!!!! – Chris 2014-10-28 15:36:39