pythonを用いて極座標をデカルト座標に直し、新規のcsvに保存したいです。
h2o_gaiaD_xmatch3arc.csv
RA(deg) | Dec(deg) | rest |
---|---|---|
0.639717 | -31.9032 | 1121.85 |
0.83875 | 55.6806 | 410.671 |
以下略 |
import
1import pandas as pd 2 3df00 = pd.read_csv("h2o_gaiaD_xmatch3arc.csv") 4df01 = df00[["RA(deg)"]] 5df02 = df00[["Dec(deg)"]] 6df03 = df00[["rest"]] 7 8print(df01, df02, df03) 9 10for i in range(0,10): 11 r = df03.iloc[[i]] 12 theta = df01.iloc[[i]] 13 phi = df02.iloc[[i]] 14 15 A = np.sin(theta * np.pi / 180) 16 B = np.cos(theta * np.pi / 180) 17 C = np.sin(phi * np.pi / 180) 18 D = np.cos(phi * np.pi / 180) 19 20 x = r * A * D 21 y = r * A * C 22 z = r * B 23 24 print(r, theta, phi) 25 print(r, A, B, C, D) 26 print(x, y, z)
とりあえずここまで作成しましたがうまくz、y、zの値の出力されません。具体的には、エラーコードは出ずにprint(z,y,z)の処理時にNaNと表示されてしまいます。その前のr,theta,phi,A,B,C,Dの出力はできます。
原因を探ったところx,y,zが3列のデータフレーム(?)として扱われていました。(添付写真右側中央参照)
よろしければ確認お願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。