我有一个带有开始和结束时间的数据框:
id start_time end_time
1 1 2018-09-02 11:13:00 2018-09-02 11:54:00
2 2 2018-09-02 14:34:00 2018-09-02 14:37:00
3 3 2018-09-02 03:00:00 2018-09-02 03:30:00
4 4 2018-09-02 03:49:00 2018-09-02 03:53:00
5 5 2018-09-02 07:05:00 2018-09-02 08:05:00
6 6 2018-09-02 06:44:00 2018-09-02 06:57:00
7 7 2018-09-02 06:04:00 2018-09-02 08:34:00
8 8 2018-09-02 07:51:00 2018-09-02 08:15:00
9 9 2018-09-02 08:16:00 2018-09-02 08:55:00
Run Code Online (Sandbox Code Playgroud)
从这些时间段,我如何计算每天每小时发生的总分钟数?例如,如果一个时段从 9:45 开始并在 10:15 结束,我想将 15 分钟分配给 9:00 小时,将 15 分钟分配给 10:00 小时。
或者检查06上面数据中的小时,该小时包含在两个不同的行(句点)中:
6 6 2018-09-02 06:44:00 2018-09-02 06:57:00 …Run Code Online (Sandbox Code Playgroud) 我有两个数据框,例如虚拟样本 df1(主数据集)和 df2。这些数据原本来自于两个不同的日志数据。
df1 始终是从午夜 02:00 到第二天 02:00 的完整数据集,在此期间具有不同的流值。但 df2 仅在特定时间段(02:00 到第二天 02:00 之间)有活动时才有价值。
我想知道如何将 df1 和 df2 结合起来。我的目标是拥有类似 df1 的完整数据集(从 02:00 到第二天 02:00)以及附加变量 - 代码 - 如果 df2 中的开始/结束时间没有活动/代码,则此变量可以为空。有时,如果仅在开始/结束时间段的某些部分有活动,则 df1 中的行需要分成 2 个
我正在寻找与此类似的结果。仅显示 4 行作为示例
id STREAM_1 STREAM_2 STREAM_3 START END
401 NIVH-ON IN null 2022-08-16 7:43:30 2022-08-16 7:45:00
401 INVH-ON OUT 12be4 2022-08-16 7:45:00 2022-08-16 7:49:00
401 INVH-ON OUT 12be4 2022-08-16 7:49:00 2022-08-16 8:15:00
Run Code Online (Sandbox Code Playgroud)
df1:
df1 <- tibble::tribble(
~id, ~STREAM_1, ~STREAM_2, ~START, ~END,
401L, "NIVH-OFF", "IN", "2022-08-16 …Run Code Online (Sandbox Code Playgroud) 我有一个像这个例子的数据:
df <-
data.frame(
date = seq(as.Date("2015-01-01"), as.Date("2015-12-31"), 100),
id = rep(LETTERS, each = 4)[1:100],
replicate(2, sample(1001, 100))
)
Run Code Online (Sandbox Code Playgroud)
用 ggplot 绘图没问题
ggplot(df, aes(x = date)) +
geom_line(aes(y = X1)) +
geom_line(aes(y = X2), linetype = 2) +
facet_wrap( ~ id , scales = "free")
Run Code Online (Sandbox Code Playgroud)
我发现了大约方面实施highchart一些信息
higcharter网测试
,我试图以使一个互动的情节与highchart绘制,但highchart::hw_grid()和browsable()已被弃用。有人可以帮我绘制数据吗?
我的片段:
highchart() %>%
hc_add_series(name = "X1", data = df$X1) %>%
hc_add_series(name = "X2", data = df$X2) %>%
hw_grid(id, rowheight = 200, ncol = 3)
Run Code Online (Sandbox Code Playgroud) 我试图在 pycharm 的项目解释器中添加 pipelinenv 但它会引发错误。
这些是我遵循的步骤:
-1- 首先在我安装的命令提示符下pip install pipenv
-2- 在命令提示符下转到我的项目目录并输入pipenv shell(此命令将查找 pipelinenv 环境并加载它,否则如果不存在将创建一个新环境)
-3- 要安装上次成功记录的环境(所有包和依赖项),请键入pipenv install --ignore-pipfile安装生产环境
-4- 在 PyCharm 文件->设置->项目中:项目名称->项目解释器click add

-5-选择pipenv environment,pycharm自动显示pipenv可执行文件

-6- 按确定 - 我在这里犯了什么错误?我在全局和我的项目目录中安装了管道

在项目目录上运行 pipelinev shell 显示了这一点
Shell for C:\Users\gh8001\.virtualenvs\churn_prediction-UB3VC30i already activated.
No action taken to avoid nested environments.
Run Code Online (Sandbox Code Playgroud) 我有两个数据框,一个是调查数据(data.csv),另一个是标签数据(label.csv)。这是示例数据(我的原始数据大约有 150 个变量)
#sample data
df <- tibble::tribble(
~id, ~House_member, ~dob, ~age_quota, ~work, ~sex, ~pss,
1L, 4L, 1983L, 2L, 2L, 1, 1,
2L, 1L, 1940L, 7L, 2L, 1, 2,
3L, 2L, 1951L, 5L, 6L, 1, 1,
4L, 4L, 1965L, 2L, 2L, 1, 4,
5L, 3L, 1965L, 2L, 3L, 1, 1,
6L, 1L, 1951L, 3L, 1L, 1, 3,
7L, 1L, 1955L, 1L, 1L, 1, 3,
8L, 4L, 1982L, 2L, 2L, 2, 5,
9L, 2L, 1990L, 2L, 4L, 2, 3,
10L, 2L, …Run Code Online (Sandbox Code Playgroud) 下面的源代码在这里。我正在尝试用我的数据复制它。我有一个时间序列数据,我在 y 轴上绘制活动和非活动数字。这是我的示例数据结构:
df <- tibble::tribble(
~Date, ~active, ~non_active,
1, 848, 335,
2, 998, 280,
3, 1096, 308,
4, 1127, 274,
5, 1022, 313,
6, 973, 351,
7, 1131, 302,
8, 1165, 312,
9, 1159, 293,
10, 1192, 311,
11, 1221, 332,
12, 1075, 369,
13, 1056, 416,
14, 1219, 356,
15, 1240, 363,
16, 1270, 376,
17, 1302, 325,
18, 1292, 346,
19, 1104, 374,
20, 1084, 413,
21, 1257, 350,
22, 1306, 356,
23, 1318, 368, …Run Code Online (Sandbox Code Playgroud) 我需要将两个数据集与壁橱时间戳一起加入。第一个数据集是来自移动应用程序的日记数据集:
df1 <- data.frame(stringsAsFactors=FALSE,
datetime = c("2019-03-19T13:26:52Z", "2019-03-19T13:26:19Z",
"2019-03-19T13:23:46Z", "2019-03-19T13:22:20Z",
"2019-03-19T13:09:56Z", "2019-03-19T13:06:04Z", "2019-03-19T13:05:21Z",
"2019-03-19T13:04:37Z", "2019-03-19T12:47:28Z",
"2019-03-19T12:46:42Z"),
transport = c("Trainride", "Trainride", "Trainride", "Trainride",
"Trainride", "Trainride", "Trainride", "Trainride",
"Trainride", "Trainride"),
id = c("5-3", "5-3", "5-3", "5-3", "5-3", "5-3", "5-3", "5-3", "5-3",
"5-3"),
disc = c("start", "stop", "start", "stop", "start", "stop", "start",
"stop", "start", "stop")
)
# datetime dttr object
df1 <- df1 %>%
mutate(datetime = lubridate::as_datetime(datetime))
Run Code Online (Sandbox Code Playgroud)
这里:
datetime transport id disc
1 2019-03-19 13:26:52 Trainride 5-3 start
2 2019-03-19 …Run Code Online (Sandbox Code Playgroud) 我在 Databricks 中有一个 spark 数据框。我正在尝试使用通用表表达式 (CTE) 运行一些 sql 查询。这是前 10 行数据
+----------+----------+------+---+---+---------+-----------------+
| data_date| user_id|region|sex|age|age_group|sum(duration_min)|
+----------+----------+------+---+---+---------+-----------------+
|2020-01-01|22600560aa| 1| 1| 28| 2| 0.0|
|2020-01-01|17148900ab| 6| 2| 60| 5| 1138.0|
|2020-01-01|21900230aa| 5| 1| 43| 4| 0.0|
|2020-01-01|35900050ac| 8| 1| 16| 1| 224.0|
|2020-01-01|22300280ad| 6| 2| 44| 4| 8.0|
|2020-01-02|19702160ac| 2| 2| 55| 5| 0.0|
|2020-02-02|17900020aa| 5| 2| 64| 5| 264.0|
|2020-02-02|16900120aa| 3| 1| 69| 6| 0.0|
|2020-02-02|11160900aa| 6| 2| 52| 5| 0.0|
|2020-03-02|16900290aa| 5| 1| 37| 3| 0.0|
+----------+----------+------+---+---+---------+-----------------+
Run Code Online (Sandbox Code Playgroud)
在这里,我将每个用户注册日期存储在 regs CTE …
common-table-expression apache-spark apache-spark-sql databricks
您好,我有一个带有权重列的数据框,如示例所示:
df <- tibble::tribble(
~id, ~edu, ~q_d1, ~q_d2_1, ~weight,
1L, 1L, 1L, 0L, 1740,
2L, 1L, 1L, 0L, 1428,
3L, 2L, 1L, 2L, 496,
4L, 2L, 1L, 2L, 550,
5L, 3L, 1L, 1L, 1762,
6L, 4L, 1L, 0L, 1004,
7L, 5L, 1L, 0L, 522,
8L, 3L, 2L, 0L, 1099,
9L, 4L, 2L, 2L, 1295
)
Run Code Online (Sandbox Code Playgroud)
我使用 srvyr 包来计算组的汇总统计数据。我的脚本:
sv_design_test <- df %>%
srvyr::as_survey_design(weights = weight)
sv_design_test %>%
dplyr::mutate(smartphone = case_when(
q_d1 == 2 ~ "No Internet",
q_d2_1 > 0 ~ …Run Code Online (Sandbox Code Playgroud) 我有一个类似于这个虚拟数据的数据帧(时间序列):
df <- data.frame(stringsAsFactors=FALSE,
symbol = c("N2", "NJ", "K-Kl", "K-P3", "K-N", "KP+", "K13", "KS",
"KTotal", "P500", "P800", "P23", "P55", "PA", "PKA"),
date = c("2017-10-12", "2017-10-12", "2017-10-12", "2017-10-12",
"2017-10-12", "2017-10-12", "2017-10-12", "2017-10-12",
"2017-10-12", "2017-10-12", "2017-10-12", "2017-10-12", "2017-10-12",
"2017-10-12", "2017-10-12"),
open_pr = c(10.2, 2.7, 0.5, 4.5, 2.9, 8.1, 2.3, 1, 43.2, 28.5, 5.8, 6.7,
5.7, 0.1, 10),
gross = c(460L, 121L, 21L, 203L, 130L, 363L, 102L, 45L, 1946L, 1282L,
262L, 303L, 256L, 6L, 449L),
avg_aud = c(19L, 3L, 0L, 5L, 5L, 21L, …Run Code Online (Sandbox Code Playgroud)