第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

如何獲得兩個日期時間列熊貓之間的時間差異?

如何獲得兩個日期時間列熊貓之間的時間差異?

SMILET 2022-08-02 18:35:29
我的數(shù)據(jù)集中有兩個不同的列,       start    end0   2015-01-01  2017-01-011   2015-01-02  2015-06-022   2015-01-03  2015-12-033   2015-01-04  2020-11-254   2015-01-05  2025-07-27我想要以特定的方式開始和結束之間的差異,這是我期望的輸出。year_diff  month_diff        2           1        0           6        0          12        5          11       10           7在這里,這一天對我來說并不重要,只有月份和年份。我試圖周期以獲得差異,但它僅在幾個月內返回不同。如何實現(xiàn)所需的輸出?df['end'].dt.to_period('M') - df['start'].dt.to_period('M'))
查看完整描述

2 回答

?
慕俠2389804

TA貢獻1719條經(jīng)驗 獲得超6個贊

嘗試:


df["year_diff"]=df["end"].dt.year.sub(df["start"].df.year)

df["month_diff"]=df["end"].dt.month.sub(df["start"].df.month)


查看完整回答
反對 回復 2022-08-02
?
12345678_0001

TA貢獻1802條經(jīng)驗 獲得超5個贊

此解決方案假定構成一年 (365) 和一個月 (30) 的天數(shù)是恒定的。如果日期時間是字符串,請將它們轉換為日期時間對象。在熊貓數(shù)據(jù)幀中,這可以像這樣完成


def to_datetime(dataframe):

    new_dataframe = pd.DataFrame()

    new_dataframe[0] = pd.to_datetime(dataframe[0], format="%Y-%m-%d")

    new_dataframe[1] = pd.to_datetime(dataframe[1], format="%Y-%m-%d")

    return new_dataframe

接下來,可以從列 0 中減去列 1 以給出天數(shù)差。我們可以使用運算符將此數(shù)字除以 365,以獲得整年數(shù)。我們可以使用運算符獲取剩余天數(shù),并使用運算符將其除以 30,得到整個月數(shù)。//%//


def get_time_diff(dataframe):

    dataframe[2] = dataframe[1] - dataframe[0]

    diff_dataframe = pd.DataFrame(columns=["year_diff", "month_diff"])

    for i in range(0, dataframe.index.stop):

        year_diff = dataframe[2][i].days // 365

        month_diff = (dataframe[2][i].days % 365) // 30

        diff_dataframe.loc[i] = [year_diff, month_diff]


    return diff_dataframe

使用這些函數(shù)的示例輸出是


       start        end days_diff year_diff month_diff

0 2019-10-15 2021-08-11  666 days         1         10

1 2020-02-11 2022-10-13  975 days         2          8

2 2018-12-17 2020-09-16  639 days         1          9

3 2017-01-03 2017-01-28   25 days         0          0

4 2019-12-21 2022-03-10  810 days         2          2

5 2018-08-08 2019-05-07  272 days         0          9

6 2017-06-18 2020-08-01 1140 days         3          1

7 2017-11-14 2020-04-17  885 days         2          5

8 2019-08-19 2020-05-10  265 days         0          8

9 2018-05-05 2020-09-08  857 days         2          4

注意:這將給出整年和月的數(shù)目。因此,如果剩下29天,一個月短一天,這將不計算在內。


查看完整回答
反對 回復 2022-08-02
  • 2 回答
  • 0 關注
  • 112 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號