过滤现有数据框以仅包含日期值介于 Python 中的两个值之间的行
Filter an existing dataframe to only include rows with a date value between two values in Python
我正在尝试从现有的 table 创建一个 table,其中仅包含日期值介于两个数字(43919 和 43989,即 2020 年 3 月 29 日和 6 月 6 日)之间的行。我正在从现有数据框“county_timeseries_covid”执行此操作并尝试创建一个新数据框“filtered_table”
当我执行以下操作时,它会创建一个新的 table,其中除满足日期要求的值外,所有值均为 null。但是,我希望排除行而不是空值:
filter1 = county_timeseries_covid["date"] >= 43919
filter2 = county_timeseries_covid["date"] < 43989
filtered_table = county_timeseries_covid.where(filter1 & filter2)
我也试过以下方法,但是这个 returns 是空的 table:
filter1 = county_timeseries_covid["date"] >= 43919
filter2 = county_timeseries_covid["date"] < 43989
filtered_table = county_timeseries_covid.where(filter1 & filter2, inplace = True)
我也试过以下方法,但 returns 出错:
filtered_table = county_timeseries_covid.where(county_timeseries_covid["date"] >= 43933
, county_timeseries_covid["date"] < 44003)
我该怎么做???看起来很简单,但是尽管谷歌了很多,我还是找不到答案。
"county_timeseries_covid" 是 Pandas 数据框?如果是这样,那么以下内容应该对您有所帮助:
county_timeseries_covid.loc[(county_timeseries_covid['date']>= 43919) & (county_timeseries_covid['date']< 43989) ,]
我正在尝试从现有的 table 创建一个 table,其中仅包含日期值介于两个数字(43919 和 43989,即 2020 年 3 月 29 日和 6 月 6 日)之间的行。我正在从现有数据框“county_timeseries_covid”执行此操作并尝试创建一个新数据框“filtered_table”
当我执行以下操作时,它会创建一个新的 table,其中除满足日期要求的值外,所有值均为 null。但是,我希望排除行而不是空值:
filter1 = county_timeseries_covid["date"] >= 43919
filter2 = county_timeseries_covid["date"] < 43989
filtered_table = county_timeseries_covid.where(filter1 & filter2)
我也试过以下方法,但是这个 returns 是空的 table:
filter1 = county_timeseries_covid["date"] >= 43919
filter2 = county_timeseries_covid["date"] < 43989
filtered_table = county_timeseries_covid.where(filter1 & filter2, inplace = True)
我也试过以下方法,但 returns 出错:
filtered_table = county_timeseries_covid.where(county_timeseries_covid["date"] >= 43933
, county_timeseries_covid["date"] < 44003)
我该怎么做???看起来很简单,但是尽管谷歌了很多,我还是找不到答案。
"county_timeseries_covid" 是 Pandas 数据框?如果是这样,那么以下内容应该对您有所帮助:
county_timeseries_covid.loc[(county_timeseries_covid['date']>= 43919) & (county_timeseries_covid['date']< 43989) ,]