没有数据的空白单元格可以用以下方法检查:if pd.isna(dataframe.loc[index_name, column_name] == True)但如果单元格有#N/A,则上述命令不起作用,dataframe.loc[index, column_name] == '#N/A'.在阅读该单元格时,它显示NaN,但上面的代码不起作用。我的主要目标是捕获发布日期并将其存储在列表中。第一次
if pd.isna(dataframe.loc[index_name, column_name] == True)
dataframe.loc[index, column_name] == '#N/A'.
ghhaqwfi1#
如果你正在从电子表格中阅读 Dataframe tft(这里似乎就是这种情况),你可以使用pandas.read_excel的参数na_values将一些值(例如#N/A)视为NaN值,如下所示:
tft
pandas.read_excel
na_values
#N/A
NaN
tft= pd.read_excel("path_to_the_file.xlsx", na_values=["#N/A"])
否则,如果您想保留那些#N/A值/字符串,可以按如下方式选中/选择它们:
tft.loc[tft["Release Data"].eq("#N/A")] #will return a dataframe
在第一个案例中,您的程式码如下所示:
rel_date= [] for i in range(len(tft)): if pd.isna(tft["Release Date"]) continue else: rel_date.append(int(str(tft.loc[i, "Release Date"]).split()[1]))
但是,这里不需要循环,您可以使用以下代码列出发布日期:
rel_date= ( tft["Release Date"] .str.extract(("Release (\d{8})"), expand=False) .dropna() .astype(int) .drop_duplicates() .tolist() ) print(rel_date) [20220603, 20220610]
1条答案
按热度按时间ghhaqwfi1#
如果你正在从电子表格中阅读 Dataframe
tft
(这里似乎就是这种情况),你可以使用pandas.read_excel
的参数na_values
将一些值(例如#N/A
)视为NaN
值,如下所示:否则,如果您想保留那些
#N/A
值/字符串,可以按如下方式选中/选择它们:在第一个案例中,您的程式码如下所示:
但是,这里不需要循环,您可以使用以下代码列出发布日期: