Lightkurve error属性错误:“NoneType”对象没有属性“Sap\u Flux”

2024-05-16 15:13:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个excel文件,里面有50001开普勒物体的基本信息。我试着阅读开普勒熊猫ID的专栏,然后把那些ID放到Lightkurve搜索中,在那里我可以对所有四分之一的观测数据做一个完整的lightcurve。这是我的密码:

import os
import pylab as plt
import numpy as np
from astropy.table import Table, Column
from astroquery.simbad import Simbad
import pandas as pd 
from astroquery.mast import Observations
import lightkurve as lk
from lightkurve import search_lightcurvefile 
from astropy.io import fits 


data = pd.read_excel ('C:\keplerDataSet.xlsx') 
df = pd.DataFrame(data, columns= ['Kepler_ID']) 
idlist = df[1:2]

for obj in idlist:
   lc = search_lightcurvefile('obj', quarter=1).download().SAP_FLUX.normalize()
   for q in range(2,17):
        lc = lc.append(search_lightcurvefile('obj',quarter=q).download().SAP_FLUX.normalize())

它给我的错误是: 'Attribute Error:'NoneType'对象没有属性'Sap\u Flux'

我是一名本科生,对编程相当陌生,所以非常欢迎任何建设性的批评。你知道吗


Tags: fromimportidobjdfsearchdataas
2条回答

调用download返回的对象似乎没有SAP\u FLUX属性。你知道吗

如果您尝试以下操作,您将能够看到下载的字符串表示形式(通常包括有助于google的类型名)以及它在一个大python列表中的属性。你知道吗

for obj in idlist:
   download = search_lightcurvefile('obj', quarter=1).download()
   print(download, dir(download))
   download.SAP_FLUX.normalize()

问题是您需要指定任务,因为此搜索也会从K2和TESS调用。你知道吗

所以

download = search_lightcurvefile('obj', quarter = 1).download()

你需要

download = search_lightcurvefile('obj', mission = ['Kepler'], quarter = 1).download()

相关问题 更多 >