0

以下は、私が処理しようとしているデータです。これは、参照と処理を容易にするために、さらに分類したいリストです。

list['X']['Y'] を呼び出してその値を簡単に呼び出すことができるように、X および Y ヘッダーを追加したいと思います。これはPythonで行うことができますか?

['0.0740,0.0730,0.0720,0.0300,0.0290,0.0240,0.0210,0.0200', '0.0200,0.0200,0.0150', '0.0260,0.0260,0.0200,0.0200,0.0200,0.0150', '0.0210,0.0210,0.0200,0.0170', '0.0770,0.0760,0.0740,0.0550,0.0450,0.0210', '0.0530,0.0520,0.0510,0.0230,0.0220', '0.0160,0.0160']

誰かが私にそれを行う方法を教えていただければ幸いです。

4

1 に答える 1

1

現在、リストには 1 つのディメンションが含まれており、コンマ区切りの文字列が価格を表しています。

.split(',')これらの文字列をリストに変換するために使用するだけです。リスト内包表記はそれを簡単にします:

splitlist = [prices.split(',') for prices in yourlist]

これにより、リストのリストが得られます。

[['0.0740', '0.0730', '0.0720', '0.0300', '0.0290', '0.0240', '0.0210', '0.0200'], ['0.0200', '0.0200', '0.0150'], ['0.0260', '0.0260', '0.0200', '0.0200', '0.0200', '0.0150'], ['0.0210', '0.0210', '0.0200', '0.0170'], ['0.0770', '0.0760', '0.0740', '0.0550', '0.0450', '0.0210'], ['0.0530', '0.0520', '0.0510', '0.0230', '0.0220'], ['0.0160', '0.0160']]

そしてsplitlist[0][0]文字列'0.0740'です。

文字列の代わりに浮動小数点値を使用する必要がある場合は、単純map()に分割文字列に適用します。

splitlist = [map(float, prices.split(',')) for prices in yourlist]

個々の価格がfloat()通話にマッピングされるようにします。これで次のことができます。

[[0.073999999999999996, 0.072999999999999995, 0.071999999999999995, 0.029999999999999999, 0.029000000000000001, 0.024, 0.021000000000000001, 0.02], [0.02, 0.02, 0.014999999999999999], [0.025999999999999999, 0.025999999999999999, 0.02, 0.02, 0.02, 0.014999999999999999], [0.021000000000000001, 0.021000000000000001, 0.02, 0.017000000000000001], [0.076999999999999999, 0.075999999999999998, 0.073999999999999996, 0.055, 0.044999999999999998, 0.021000000000000001], [0.052999999999999999, 0.051999999999999998, 0.050999999999999997, 0.023, 0.021999999999999999], [0.016, 0.016]]

splitlist[0][0]浮動小数点値があります0.073999999999999996

于 2012-12-15T11:52:05.367 に答える