我有一個Python數據框有多列。將python數據框轉換爲列表
LogBlk Page BayFail
0 0 [0, 1, 8, 9]
1 16 [0, 1, 4, 5, 6, 8, 9, 12, 13, 14]
2 32 [0, 1, 4, 5, 6, 8, 9, 12, 13, 14]
3 48 [0, 1, 4, 5, 6, 8, 9, 12, 13, 14]
我想查找與LogBlk = 0和Page = 0關聯的BayFails。
df2 = df[ (df['Page'] == 16) & (df['LogBlk'] == 0) ]['BayFail']
這將返回[0,1,8,9]
我想要做的是轉換這個pandas.series到一個列表。有誰知道這是怎麼做到的嗎?
有爲什麼tolist()打破了Python方法的命名約定一個特別的原因? DataFrame的等價方法是to_list(),我相信。 – 2014-09-15 17:41:49
@HenryHenrinson:在過去,Pandas系列是NumPy ndarrays的一個子類。 'ndarrays'有一個['tolist'方法](http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.tolist.html)。系列'tolist'方法[*覆蓋* ndarray方法](https://github.com/pydata/pandas/issues/2447)以不同的方式處理datetime64s。因此,命名約定中的中斷是NumPy命名約定的延伸。你說得對,現在它應該是'to_list'以符合所有其他的Series和DataFrame'to_ *'方法。 – unutbu 2014-09-15 18:34:07