[英]SkyCoord distance throws KeyError: 0
# print(df['parallax'].min())
# 724097.8971232784
# print(df['parallax'].max())
# 767397.7874147035
# Convert the RA, Dec, and parallax to 3D Cartesian coordinates
c = SkyCoord(ra=df['ra']*u.deg, dec=df['dec']*u.deg, distance=df['parallax']*u.pc, frame='icrs')
我正在尝试使用 SkyCord 将检索到的数据转换为笛卡尔坐标,但执行会抛出 KeyError: 0
我已经能够将错误来源缩小到距离参数。 我的数据集中的距离值在 724097.8971232784 到 767397.7874147035 的范围内,并且我确保没有任何 NaN 条目。 但在我看来,无论如何 SkyCoord 对我的距离值都有问题。
非常感谢有关如何解决此问题的任何想法。
我正在使用 astropy 5.1
看起来我已经能够通过预先转换为 Quantity object 并将 dtype 定义为 float64 来消除此错误,如下所示:
parallax = u.Quantity(df['parallax'], unit='pc', dtype='float64')
# Convert the RA, Dec, and parallax to 3D Cartesian coordinates
c = SkyCoord(ra=df['ra']*u.deg, dec=df['dec']*u.deg, distance=parallax*u.pc, frame='icrs')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.