2013-02-12 58 views
0

我在格式的某些數據(從CSV文件中取出):Python的劈裂萃取CSV數據

MyValues = [[2 2 2 1 1] 
      [2 2 2 2 1] 
      [1 2 2 1 1] 
      [2 1 2 1 2] 
      [2 1 2 1 2] 
      [2 1 2 1 2] 
      [2 1 2 1 2] 
      [2 2 2 1 1] 
      [1 2 2 1 1]] 

我想這個數據拆分成2/3和1/3,並且能夠區分它們之間。例如

twoThirds = [[2 2 2 1 1] 
      [2 2 2 2 1] 
      [1 2 2 1 1] 
      [2 1 2 1 2] 
      [2 1 2 1 2] 
      [2 1 2 1 2]] 

oneThird = [[2 1 2 1 2] 
      [2 2 2 1 1] 
      [1 2 2 1 1]] 

我試圖使用下面的代碼來實現這一點,但我不確定是否我已經走過了這個正確的方式?

twoThirds = (MyValues * 2)/3 #What does this code provide me? 
+0

我不確定你在問什麼。它看起來像你試圖切片陣列。 twoThirds,oneThird = MyValues [:len(MyValues)* 2/3],MyValues [len(MyValues)* 2/3:]。 – 2013-02-12 20:01:56

回答

2

這只是一個列表,使用切片符號。並閱讀docs

In [59]: l = range(9) 

In [60]: l[:len(l)/3*2] 
Out[60]: [0, 1, 2, 3, 4, 5] 

In [61]: l[len(l)/3*2:] 
Out[61]: [6, 7, 8] 
+0

您也可以使用切片符號檢出此問題。 http://stackoverflow.com/questions/509211/the-python-slice-notation – 2013-02-12 20:03:30