正規表現を使って特定の文字列をnumpy配列に成形したい
スクレイピングで吐き出された文字列が以下のようなものでした。
['1\n2 64.9\n3 1.9\n4 27.0\n5 79.4\n6 9.6\n7 13.4\n8 5.9\n9 34.8']
この文字列から
a[1][2] = 64.9
a[1][3] = 1.9
a[1][4] = 27.0
....
a[1][9] = 34.8
となるような配列を作ろうとしています。
補足1: a[1]の列は文字列先頭の1に起因してます。
補足2: a[1][i]は \n+'i' からきています
補足3: a[1][i] = x は \n+'i'+' '+ 'x' からきています
試したこと
とりあえず置換したあと、re.search()関数で '\n+[1-9]'で探せば良いと思ったのですが、補足3の 64.9などの小数点を含む場合正規表現でできないと思ったので困っています。他のメソッドを探したほうがいいでしょうか?
該当のソースコード
a = np.arange(9,9)
X = str(X)
i = X[0]
X = X.replace("\n", " ',' ")
X = X.replace("'", "")
X = X.replace("[", "")
X = X.replace("]", "")
python 3.6 numpy reモジュール
回答3件
あなたの回答
tips
プレビュー