У меня есть фрейм данных df , и я устанавливаю интервалы, которые сохраняются в векторе pts .Теперь я хочу пометить свои данные в эти интервалы.Я пытался использовать функцию cut (), но всегда получаю ошибку, что x не является числовым, хотя я преобразовал его в числовое.
Мой фрейм данных df
date amount
1 2012-07-01 2.3498695
2 2012-08-01 0.6984866
3 2012-09-01 0.9079118
4 2012-10-01 2.8858218
5 2012-11-01 1.2406948
6 2012-12-01 2.3140496
7 2013-01-01 1.5904573
8 2013-02-01 3.2531825
9 2013-03-01 4.2962963
10 2013-04-01 3.3287101
11 2013-05-01 3.7698413
12 2013-06-01 1.4376997
13 2013-07-01 5.0687285
14 2013-08-01 4.4520548
15 2013-09-01 5.5063913
16 2013-10-01 5.5676856
17 2013-11-01 6.2686567
18 2013-12-01 11.021069
Мой вектор pts со столбцом Мин с точками интервала
pts$Min
[1] 3 6 11
Мой новый фрейм данных должен выглядеть следующим образом:
date amount IntervalRange
1 2012-07-01 2.3498695 1
2 2012-08-01 0.6984866 1
3 2012-09-01 0.9079118 1
4 2012-10-01 2.8858218 2
5 2012-11-01 1.2406948 2
6 2012-12-01 2.3140496 2
7 2013-01-01 1.5904573 3
8 2013-02-01 3.2531825 3
9 2013-03-01 4.2962963 3
10 2013-04-01 3.3287101 3
11 2013-05-01 3.7698413 3
12 2013-06-01 1.4376997 4
13 2013-07-01 5.0687285 4
14 2013-08-01 4.4520548 4
15 2013-09-01 5.5063913 4
16 2013-10-01 5.5676856 4
17 2013-11-01 6.2686567 4
18 2013-12-01 11.021069 4
ТАК, я попробовал это:
df_cut <- data.frame(as.numeric(df$date), "IntervalRange" = cut(
df,
breaks=pts$Min))
Что приводит к этому сообщению об ошибке :
Ошибка в cut.default (df, breaks = pts $Мин.): 'X' должно быть числовым
Мои вопросы теперь :
- Почему я получаю это сообщение об ошибке?Я уже изменил его на числовой ...
- Можно ли получить желаемый результат с помощью функций cut () и findIntervals () также при использовании других наборов данных сдругие интервальные точки?