python - Arrays? List? Storing Values(x,y) to each line -
is there way on python create sort of array assign x , y value every line in file every time split?
myarray=[][]
?
say lines are
0.0 0.0 nan ( want line have value[1,1] 1.0 0.0 1.0 (and increasing y 1 leaving x lone [1,2] 2.0 0.0 nan ---[1,3] 3.0 0.0 nan---[1,4] 0.0 1.0 2.0---(but when middle term changes value (increase x 1 , reset y 1 leaving [2,1]) 1.0 1.0 3.0---[2,2] 2.0 1.0 4.0---[2,3] 3.0 1.0 nan--- , on 0.0 2.0 5.0 1.0 2.0 6.0 2.0 2.0 7.0 3.0 2.0 nan 0.0 3.0 nan 1.0 3.0 nan 2.0 3.0 8.0 3.0 3.0 9.0 0.0 4.0 nan 1.0 4.0 nan 2.0 4.0 nan 3.0 4.0 10.0 ---[4,4]
does create sense of asking? there way this?
text = """0.0 0.0 nan 1.0 0.0 1.0 2.0 0.0 nan 3.0 0.0 nan 0.0 1.0 2.0 1.0 1.0 3.0 2.0 1.0 4.0 3.0 1.0 nan 0.0 2.0 5.0 1.0 2.0 6.0 2.0 2.0 7.0 3.0 2.0 nan 0.0 3.0 nan 1.0 3.0 nan 2.0 3.0 8.0 3.0 3.0 9.0 0.0 4.0 nan""" # read info results = [] x in text.splitlines(): x = x.strip() if x: results.append( x.split() ) # count [1,1], [1,2], etc. new_results = [] value = [0,0] middle = none row in results: if row[1] != middle: middle = row[1] value[0] += 1 value[1] = 1 row.append(value[:]) new_results.append(row) value[1] += 1 x in new_results: print x
result:
['0.0', '0.0', 'nan', [1, 1]] ['1.0', '0.0', '1.0', [1, 2]] ['2.0', '0.0', 'nan', [1, 3]] ['3.0', '0.0', 'nan', [1, 4]] ['0.0', '1.0', '2.0', [2, 1]] ['1.0', '1.0', '3.0', [2, 2]] ['2.0', '1.0', '4.0', [2, 3]] ['3.0', '1.0', 'nan', [2, 4]] ['0.0', '2.0', '5.0', [3, 1]] ['1.0', '2.0', '6.0', [3, 2]] ['2.0', '2.0', '7.0', [3, 3]] ['3.0', '2.0', 'nan', [3, 4]] ['0.0', '3.0', 'nan', [4, 1]] ['1.0', '3.0', 'nan', [4, 2]] ['2.0', '3.0', '8.0', [4, 3]] ['3.0', '3.0', '9.0', [4, 4]] ['0.0', '4.0', 'nan', [5, 1]]
python arrays storing-data
No comments:
Post a Comment