1

Я пытаюсь отсортировать несколько тысяч строк данных о погоде. Каждая строка представляет дату (кол. C, DATE) и единственный другой столбец, который меня интересует, это уровень осадков (кол. D, PRCP.)

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

Дата указана в 8-символьном формате (т.е. 19800111 = 11 января 1980 г.), и мне нужно будет считать календарную дату, игнорируя первые четыре цифры (год), если столбец PRCP (D) равен 0. Это (я предполагаю) будет подсчитывать количество сухих дней на эту дату. В конце функции день с наибольшим количеством будет исторически самым сухим днем года.

Имеет ли это смысл? Есть ли лучший способ приблизиться? Как это будет написано?

Прикрепленный скриншот столбцов CSV. Я нахожусь в Excel для Mac v 15.25. Спасибо за понимание!

Скриншот CSV

3 ответа3

1

Усечь первые четыре цифры даты (например, ПРАВО (A1, 4)), затем отсортировать по усеченной дате. Затем просто делайте СУММУ () после каждой уникальной даты.

1

Напишите правильные 4 цифры (месяц и день) в новом столбце
В S1 напишите =RIGHT(C1,4) и перетащите его вниз, выберите столбец S и удалите дубликаты.

Column S      Column T
    0101      =Sumproduct(--Right($C$1:$C$9999,4)=S1)*(--$D$1:$D$9999))
    0102
    0103

=SUMPRODUCT(--(RIGHT($C$1:$C$9999,4)=S1)*(--$D$1:$D$9999=0))

где C1:C9999 - столбец Дата
D1:D9999 - столбец PRCP
Измените его в соответствии с вашими данными и сохраняйте $
Вы можете перетащить формулу, чтобы иметь счет на каждый день
Затем сортировать 365 дней по убыванию
Результат 0 в T означает PRCP> 0
Формула считается только тогда, когда PRCP равен 0

0

Предполагая, что диапазон B7:B9999 хранит даты и значения осадков в C7:C9999 (пример с некоторыми случайными данными PRCP)

, заполните D7:D9999 дня года (DOY), используя формулу

=DATE(MID(B7,1,4),MID(B7,5,2),MID(B7,7,2))-DATE(MID(B7,1,4),1,1)+1

Затем введите F7 формулу массива (чтобы ввести формулу, нажмите Ctrl+Shift+Enter вместо просто Enter для скалярной формулы)

=MIN(SUMIF($D$7:$D$9999,ROW($A$1:$A$365),$C$7:$C$9999)/COUNTIF($D$7:$D$9999,ROW($A$1:$A$365)))

, который покажет минимальное среднее дневное количество осадков. Другая формула массива

=MATCH(F7,SUMIF($D$7:$D$9999,ROW($A$1:$A$365),$C$7:$C$9999)/COUNTIF($D$7:$D$9999,ROW($A$1:$A$365)),0)

в G7 покажет соответствующий DOY и формулу

=TEXT(DATE(2001,1,1)+G7-1,"d-MMM")

в H7 покажет DOY в формате d-MMM .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .