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

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

根據(jù)條件反轉(zhuǎn)熊貓數(shù)據(jù)框中條目的位置

根據(jù)條件反轉(zhuǎn)熊貓數(shù)據(jù)框中條目的位置

精慕HU 2022-11-29 14:48:24
在這里,我從我的 pandas 數(shù)據(jù)框中提取了一個數(shù)據(jù)框,它是帶有兩個日期時間字段的調(diào)查數(shù)據(jù)。似乎有些開始時間和結(jié)束時間在調(diào)查中填錯了位置。這是我的數(shù)據(jù)框中的示例。第 8 行的開始和結(jié)束時間,我懷疑輸入錯誤。為了提供上下文,我生成了第三列,如下所示:df_time['trip_duration'] =  df_time['tripEnd_time'] - df_time['tripStart_time']三列采用 timedelta64 格式。這是我的數(shù)據(jù)框的頂部:tripStart_time  tripEnd_time    trip_duration1   22:30:00    23:15:00    00:45:002   11:00:00    11:30:00    00:30:003   09:00:00    09:15:00    00:15:004   13:30:00    14:25:00    00:55:005   09:00:00    10:15:00    01:15:006   12:00:00    12:15:00    00:15:007   08:00:00    08:30:00    00:30:008   11:00:00    09:15:00    -1 days +22:15:009   14:00:00    14:30:00    00:30:0010  14:55:00    15:20:00    00:25:00我想做的是,循環(huán)遍歷這兩列,每次“tripEnd_time”小于“tripStart_time”時,交換這兩個條目的位置。所以在上面第 8 行的情況下,我會讓 tripStart_time = tripEnd_time 和 tripEnd_time = tripStart_time。我不太確定解決這個問題的最佳方法。我應(yīng)該使用嵌套的 for 循環(huán)來比較兩列中的每個條目嗎?謝謝
查看完整描述

2 回答

?
慕容708150

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超4個贊

使用Series.abs

df_time['trip_duration'] = (df_time['tripEnd_time'] - df_time['tripStart_time']).abs()

print (df_time)

1        22:30:00     23:15:00      00:45:00

2        11:00:00     11:30:00      00:30:00

3        09:00:00     09:15:00      00:15:00

4        13:30:00     14:25:00      00:55:00

5        09:00:00     10:15:00      01:15:00

6        12:00:00     12:15:00      00:15:00

7        08:00:00     08:30:00      00:30:00

8        11:00:00     09:15:00      01:45:00

9        14:00:00     14:30:00      00:30:00

10       14:55:00     15:20:00      00:25:00

什么是一樣的:


a = df_time['tripEnd_time'] - df_time['tripStart_time']

b = df_time['tripStart_time'] - df_time['tripEnd_time']

mask = df_time['tripEnd_time'] > df_time['tripStart_time']


df_time['trip_duration'] =  np.where(mask, a, b)

print (df_time)

   tripStart_time tripEnd_time trip_duration

1        22:30:00     23:15:00      00:45:00

2        11:00:00     11:30:00      00:30:00

3        09:00:00     09:15:00      00:15:00

4        13:30:00     14:25:00      00:55:00

5        09:00:00     10:15:00      01:15:00

6        12:00:00     12:15:00      00:15:00

7        08:00:00     08:30:00      00:30:00

8        11:00:00     09:15:00      01:45:00

9        14:00:00     14:30:00      00:30:00

10       14:55:00     15:20:00      00:25:00


查看完整回答
反對 回復(fù) 2022-11-29
?
蝴蝶不菲

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超4個贊

您可以切換選定行的列值:


df_time.loc[df_time['tripEnd_time'] < df_time['tripStart_time'],

            ['tripStart_time', 'tripEnd_time']] = df_time.loc[

                df_time['tripEnd_time'] < df_time['tripStart_time'],

                ['tripEnd_time', 'tripStart_time']].values


查看完整回答
反對 回復(fù) 2022-11-29
  • 2 回答
  • 0 關(guān)注
  • 101 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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