Характеристика сроков сбора плодов в R с помощью единичных статистических значений

#r

#r

Вопрос:

Я новичок в этом, поэтому извините, если мой вопрос звучит просто. Вот моя проблема:

Я работаю над данными о сроках сбора урожая фруктов, цель состоит в том, чтобы получить значимые единичные значения для сравнения сроков разных сортов. Деревья собирают в течение нескольких недель, поэтому, если вы построите график урожайности каждого сорта за неделю, вы получите то, что можно было бы приравнять к нормальному распределению.

Моя идея состоит в том, чтобы получить статистические значения для распределения урожая по неделям.

Значения, о которых я думаю, — это квартили, IQR (межквартильный диапазон), эксцесс, асимметрия и т. Д… но я просто изо всех сил пытаюсь приблизиться к этому в R.

Мои данные представлены следующим образом:

 cultivar, week , year , yield
var x, week 10 , year 1 , 600 grams
var y, week 10 , year 1 , 850 grams
var x, week 13 , year 1 , 1000 grams
var y, week 14 , year 1 , 1200 grams
var x, week 15 , year 1 , 700 grams
var y, week 16 , year 1 , 1000 grams
var x, week 10 , year 2 , 500 grams
var y, week 10 , year 2 , 700 grams
var x, week 13 , year 2 , 1300 grams
...  
  

Спасибо

Ответ №1:

Предположим, что ваш фрейм данных выглядит следующим образом

 > df
  cultivar      week     year       yield
1    var x  week 10   year 1    600 grams
2    var y  week 10   year 1    850 grams
3    var x  week 13   year 1   1000 grams
4    var y  week 14   year 1   1200 grams
5    var x  week 15   year 1    700 grams
6    var y  week 16   year 1   1000 grams
7    var x  week 10   year 2    500 grams
8    var y  week 10   year 2    700 grams
9    var x  week 13   year 2   1300 grams
  

Вы можете получить квантили из summary функции R. Однако для вычисления эксцесса и асимметрии требуется дополнительный пакет. Сначала введите следующую команду в консоли R.

 install.packages("moments")
  

Затем вы можете запустить следующий скрипт

 library(moments)

df$yield <- as.numeric(sub(" grams", "", df$yield)) # convert `yield` into a numeric vector
aggregate(
  yield ~ cultivar, data = df, 
  function(x) c(summary(x), skewness = skewness(x), kurtosis = kurtosis(x))
)
  

Вывод

   cultivar   yield.Min. yield.1st Qu. yield.Median   yield.Mean yield.3rd Qu.   yield.Max. yield.skewness yield.kurtosis
1    var x  500.0000000   600.0000000  700.0000000  820.0000000  1000.0000000 1300.0000000      0.5692290      1.8333916
2    var y  700.0000000   812.5000000  925.0000000  937.5000000  1050.0000000 1200.0000000      0.1684715      1.7088259
  

Комментарии:

1. Это так здорово, спасибо за вашу помощь! Есть ли способ выразить квантили в неделях, чтобы я знал, что 25% от общего урожая за 1 год производится к неделе x, 50% к неделе y (медиана) и 75% к неделе z?

2. Здесь мне нужно некоторое разъяснение. AFAIK, 50% от общего урожая в год 1 не равно среднему недельному урожаю. Например, если урожайность составляет 30, 40, 50, 60 и 70 в соответствующие недели 1-го года, тогда медиана равна 50, но 50% от общего урожая равно 125. Чего именно вы хотите? @oliC

3. Привет, Ekoam, еще раз спасибо. Давайте упростим это: если у вас var x, неделя 1, 100 грамм var x , неделя 2, 200 грамм var x , неделя 3, 300 грамм var x , неделя 4, 200 грамм var x , неделя 5, 100 грамм, нанесите недели на ось x, а урожай — на ось y. Вопросы: Каков межквартильный интервал в неделях? Какова средняя неделя? что такое эксцесс? Что такое квантили?… Если вы подумаете об этом, это может быть гистограмма, где каждый грамм урожая попадает в категорию (неделю), поэтому я не понимаю, почему мы не могли получить эти значения… Я просто не понимаю, как…

4. В вашем примере IQR равен 100, 1-й квантиль равен 200, а 3-й квантиль равен 300. Однако у вас есть две недели с урожаем в 200 граммов. Тогда какую неделю вы хотите показать? Кроме того, если есть, например, 6 недель со следующими урожаями: 100, 200, 300, 174, 100, 100, тогда IQR становится 93,5, 3-й квантиль становится 193,5, а 1-й квантиль равен 100. Тогда как вы можете сопоставить IQR или 3-й квантиль с неделей? @oliC

5. Извините, если я плохо объясняюсь. Давайте выразимся по-другому: то, как я это визуализирую (теоретически), представляет собой гистограмму (или соответствующий ей гауссовский колокол), где x = недели (упорядоченные) и y = урожай. вопрос в том, что такое x, когда y = 25% от общего урожая ? и 50% и 75%? @ekoam