У меня есть фрейм данных со списком симптомов в качестве первой строки, а 0 и 1 заполняют столбцы, указывающие, есть ли у каждого случая симптом или нет. Я хотел бы сделать гистограмму, показывающую частоту появления каждого симптома.
Например:
COVID
Fever Cough SOB Fatigue Results
1 1 0 1 Positive
0 1 1 1 Positive
1 0 1 1 Positive
1 1 1 1 Positive
Гистограмма должна иметь 4 бара: лихорадка (высота 3), кашель (высота 3), SOB (высота 3), усталость (высота 4).
В качестве дополнительного усложнения этот файл имеет как положительные, так и отрицательные случаи, и мне нужно брать эти данные только из положительных случаев. Я упустил все отрицательные случаи в моем примере выше для простоты.
Я пробовал это, но это работает только для одного симптома:
symptoms_plot <- ggplot(subset(COVID, Results == "Positive" & Cough == 1), aes(Cough)) + geom_bar()
Я также смог выделить только положительные случаи с этим:
split_by_result = split(COVID, COVID$Results)
split_by_result[["Positive"]]
Я понимаю, что было бы проще, если бы данные были отформатированы по-другому, однако это живой документ, и случаи добавляются ежедневно, и я не могу изменить способ добавления случаев.