gpt4 book ai didi

python - 如何将时间拆分为小时?

转载 作者:行者123 更新时间:2023-12-03 20:49:58 24 4
gpt4 key购买 nike

我有一个数据框,其中包含用户在某个网页(任务)上花费的秒数,如下所示:

UserID  Page1   Page2   Page3 ....
24 2789 2375 574
39 3745 3800 4567
35 100 300 1005
.
.
.
我想将这些秒数拆分为如下几小时,以便我可以知道每个用户在他/她浏览网站的某个小时内在哪个页面上:
UserID  Hour1     Hour2     Hour3  ....
24 Page1 Page1 Page2
39 Page1 Page2 Page3
35 Page1 Page1 Page1
.
.
.

最佳答案

您真的希望最终输出列是实际小时数还是仅以小时形式显示原始数据?如果后者这应该工作

# Melt down DataFrame
df = df.melt(id_vars='UserID',var_name='Page',value_name='Seconds')

UserID Page Seconds
0 24 Page1 2789
1 39 Page1 3745
2 35 Page1 100
3 24 Page2 2375
4 39 Page2 3800
5 35 Page2 300
6 24 Page3 574
7 39 Page3 4567
8 35 Page3 1005

# Create column of Seconds converted to Hours
df['Hours'] = df['Seconds'] / 60

# Convert float to int data type
df['Hours'] = df['Hours'].astype(int)

UserID Page Seconds Hours
0 24 Page1 2789 46
1 39 Page1 3745 62
2 35 Page1 100 1
3 24 Page2 2375 39
4 39 Page2 3800 63
5 35 Page2 300 5
6 24 Page3 574 9
7 39 Page3 4567 76
8 35 Page3 1005 16

# Create new DataFrame of pivoted df DataFrame
df_hrs = df.pivot_table(index=['UserID'],columns=['Page'], values='Hours')

# Reset index to flatten DataFrame
df_hrs.reset_index(inplace=True)

# Change column name attribute
df_hrs.columns.rename('',inplace=True)

UserID Page1 Page2 Page3
0 24 46 39 9
1 35 1 5 16
2 39 62 63 76

关于python - 如何将时间拆分为小时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63395510/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com