亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

刪除多組時間戳之間的行

刪除多組時間戳之間的行

九州編程 2021-10-19 10:45:18
我有一個具有 (yyyy-mm-dd hh:mm:ss) 形式的時間戳的 DataFrame。我正在嘗試刪除兩個不同時間戳之間的數據。目前我可以刪除 1 個時間戳范圍之間的數據,但我無法將其擴展到多個時間戳。例如,使用 DataFrame 我可以刪除一系列行(例如 2015-03-01 00:20:00 到 2015-08-01 01:10:00)但是,我不知道如何刪除另一個范圍在它旁邊。執行此操作的代碼如下所示。index_list= df.timestamp[(df.timestamp >= "2015-07-01 00:00:00") & (df.timestamp <= "2015-12-30 23:50:00")].index.tolist()df1.drop(df1.index[index_list1, inplace = True)DataFrame 延續了 3 年以上,并且包含了這 3 年中的每一天。我試圖刪除所有 3 年從 7 月到 12 月(2015-07-01 00:00:00 到 2015-12-30 23:50:00)的所有行。我在想我創建了一個輔助列,它從日期列中獲取月份,然后根據輔助列中的月份進行刪除。我將不勝感激任何建議。謝謝!編輯:我添加了 DataFrame 的一個小總結版本。這就是初始 DataFrame 的樣子。df    Date                   v    2015-01-01 00:00:00     30.0    2015-02-01 00:10:00     55.0    2015-03-01 00:20:00     36.0    2015-04-01 00:30:00     65.0    2015-05-01 00:40:00     35.0    2015-06-01 00:50:00     22.0    2015-07-01 01:00:00     74.0    2015-08-01 01:10:00     54.0    2015-09-01 01:20:00     86.0    2015-10-01 01:30:00     91.0    2015-11-01 01:40:00     65.0    2015-12-01 01:50:00     35.0得到這樣的東西df    Date                   v    2015-01-01 00:00:00     30.0    2015-02-01 00:10:00     55.0    2015-03-01 00:20:00     36.0    2015-05-01 00:40:00     35.0    2015-06-01 00:50:00     22.0    2015-11-01 01:40:00     65.0    2015-12-01 01:50:00     35.0其中時間戳“2015-07-01 00:20:00 to 2015-10-01 00:30:00”和“2015-07-01 01:00:00 to 2015-10-01 01:30:00”被刪除。對不起,如果我的格式不符合標準。
查看完整描述

2 回答

?
守著星空守著你

TA貢獻1799條經驗 獲得超8個贊

如果您的時間戳列使用正確的 dtype,您可以這樣做:

df.loc[df.timestamp.dt.month.isin([1, 2, 3, 5, 6, 11, 12])]

這應該過濾掉不在列表中的月份。


查看完整回答
反對 回復 2021-10-19
  • 2 回答
  • 0 關注
  • 190 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號