如何在python中编辑函数,使输出数据框显示N/A?

如何在python中编辑函数,使输出数据框显示N/A?,python,pandas,api,Python,Pandas,Api,我在下面的python中定义了一个函数,用于根据我已经检索到的业务id提取操作时间: def hours_operation(business_id): day = day_open(business_id) start = day_start(business_id) end = day_end(business_id) day1 = [] for i in day: try: value = "start"+st

我在下面的python中定义了一个函数,用于根据我已经检索到的业务id提取操作时间:

def hours_operation(business_id):
    day = day_open(business_id)
    start = day_start(business_id)
    end = day_end(business_id)
    day1 = []
    for i in day:
        try:
            value = "start"+str(i)
        except:
            value = 'None'
        day1.append(value)
    dict1 = {}
    for i in range(len(day1)):
            dict1[day1[i]]=start[i]
    start_df = pd.DataFrame(dict1, index=[0])    
    day2 = []
    for i in day:
        day2.append("end"+str(i))
    dict2 = {}
    for i in range(len(day2)):
            dict2[day2[i]]=end[i]
    end_df = pd.DataFrame(dict2, index=[0])
    for i in day:
        start_df['end'+str(i)]=end_df['end'+str(i)]
    return start_df
问题是我的输出如下所示:

Out[36]: 
  start0 start1 start2 start3 start4  ...   end2  end3  end4  end5  end6
0   1100   1100   1100   1100   1100  ...   2200  2200  2200  2200  2100
然而,我喜欢这种格式,如果一家公司一周只工作4天,而不是7天。我希望它以N/A的形式返回开始和结束

如果一家企业一周只工作4天,这就是我想要的输出:

start0 start1 start2 start3 start4 start5 start6 end1   end2  end3  end4  end5  end6
     0   1100   1100   1100   1100   1100    N/A  N/A   2200  2200  2200  N/a   N/A

您可以使用python第三个条件语句,如下所示:

dict1[day1[i]]= start[i] if start[i] is not None else 'N/a'

这是假设
start[i]
是开始时间的值,并且不希望输出的值是非类型对象。例如,如果它是0或某个字符串,则只需更新该语句中的条件以反映它。(当然,您必须在结束时间使用相同的内容)

在代码到达API后,如果业务在2天内没有运行,它不会返回为“无”它只是空白。因此,这可能是一个字符串,您可以使用
if start[i]!=“”
作为条件,我收到一个名称错误name错误:名称'dict1'未定义是的,您必须将看起来像
dict1[day1[i]=start[i]
的行替换为我建议的编辑。但它不是重新命名为N/a。它的输出是相同的