我只想得到日期等于星期四的結果。我能夠過濾開放的網站和ff,這是先到先得的服務器,但不知道如何從我指定的日期中過濾一個特定的日子。謝謝你
。def main():
結果 = []
print('Checking for available campsites....'/span>)
for unit_id in list(range(5095, 5096)) [5117] [5056] [5078] [5111] [5113] [5115] [5119] 。
resp = requests.get(
f "https://calirdr.usedirect.com/rdr/rdr/fd/"]
f "availability/getbyunit/{unit_id}/startdate/{day_today}/nights/60/true?").json()
result.extend(resp)
df = pd.DataFrame(result)
df.rename(columns={'UnitId'/span>: 'Site', 'StartTime': 'Date', 'IsFree': 'Open'/span>, 'IsWalkin'/span>: 'FF'}, inplace=True)
filter_by = ['Site'/span>, 'Date'/span>, 'Open'/span>, 'FF'/span>]
df = df.filter(items=filter_by)
df['Date'] = df['Date'].apply(lambda d: datetime.fromisoformat(d).strftime("%m-%d-%y %A" /span>)
# I only want results where day equals Thursday[/span
df = df[df['Open' ]]
df = df[~df['FF' ]]
print(df)
列印結果
網站日期打開 FF
5095 09-23-21 Thursday True False
5095 10-19-21 星期二 True False
5095 10-20-21 星期三 True False
5095 10-21-21 星期四 True False
uj5u.com熱心網友回復:
你可以使用pandas.Series.day_name()/code>。如果你將Date列保留為datetime64,而不是將其轉換為字串:
# Example data based on your final DataFrame。
df = pd.DataFrame({'Site': [5095, 5095, 5095, 5095] 。
'Date'/span>: ['2021-09-23'/span>, '2021-10-19'/span>, '2021-10-20'/span>, '2021-10-21'/span>]。
'Open': [True, True, True, True, True] 。
'FF': [False, False, False, False]})
print(df)
網站日期開放FF
0 5095 2021-09-23 True False
1 5095 2021-10-19 True False
2 5095 2021-10-20 True False
3 5095 2021-10-21 True False
df[df['Date'].dt.day_name() == '星期四']
網站日期打開FF
0 5095 2021-09-23 True False
3 5095 2021-10-21 True False
uj5u.com熱心網友回復:
或者為什么不只是:
df[df['Date'].dt.dayofweek ==4]
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/323160.html
標籤:
上一篇:如何格式化一個文本檔案?
