私はnumpy配列に読みたいデータがあります。データは文字列形式です。 1行の形式は文字列に結合された負の科学的書式番号を解析します。
' 0.600759893E-02 0.000000000E+00-0.112325850E-02 0.000000000E+00 0.000000000E+00'
です。文字列を5つの別々の番号に解析したいと思います。すべての数字の間にスペースがあれば、これは簡単です。残念ながら、負の数の場合は、負の数と前の数の間にスペースがないので、より難しくなります。マイナス記号は、負の数の前に表示されるだけではありません。時には、指数が負の値になる場合もあります。上記のような行を5つの別々の数に解析する高速な方法はありますか?ここで
は、私は現在、上記のコードは、前述した理由は、マイナス記号の問題のいくつかのケースで失敗しimport pandas as pd
data1 = pd.read_csv('datafile.csv')
dim1 = 5
geometryparameters = np.zeros(dim1,dtype=float)
c=data1.iloc[1,0] # Just taking the first row, which is in string format
csplit = c.split(" ") # Splitting the string into parts
for it1 in np.arange(dim1):
geometryparameters[it1] = float(csplit[it1]) # converting the string into float
持っているコードのMWEです。
それはあなたがしようとしたコードとその出力を含めるために常に最善です:
したがって、各ラインのために、xは5個の数字のリストになります。さもなければ、人々はこれを、あなたのためにあなたのコードを書く人を探していると解釈するかもしれません。 – Mark