簡體   English   中英

平滑 R dataframe 中的缺失值

[英]Smoothing out missing values in R dataframe

我正在使用數據集 - https://data.ca.gov/dataset/covid-19-cases/resource/7e477adb-d7ab-4d4b-a198-dc4c6dc634c9來調查加利福尼亞的 covid 病例和死亡人數。

除了按種族查看病例/死亡人數外,我還對數據進行了分組,以給出每天死亡病例的總列。 我還使用滯后 function 來給出每日病例/死亡人數。

然而,在 12 月的 2 天(23 日和 30 日),病例或死亡人數列沒有增加,因此每日病例和死亡人數為 0。第二天,數據被“趕上”,增加了額外的大量數據,顯然2天的總和。 (我懷疑聖誕節和新年是原因)

有沒有辦法修復這些數據? 例如,將雙天測量值分成兩半並用它填充單元格,然后回顧性地改變每日病例和每日死亡數字? 希望截圖能澄清我的意思。

這是我使用的代碼:

demog_eth <- (read.csv ("./Data/case_demographics_ethnicity.csv", header = T, sep = ","))
demog_eth$date <-as.Date(demog_eth$date)

#Create a DF with total daily information 
total_stats <- data.frame(demog_eth$cases,demog_eth$deaths,demog_eth$date)
names(total_stats) <- c('cases', 'deaths', 'date')
total_stats <- total_stats %>% group_by(date) %>% summarise(cases = sum(cases), deaths = sum(deaths))

#Add daily cases and deaths by computing faily difference in totals
##Comment - use lag to look at previous rows
total_stats <- total_stats %>%
  mutate(daily_cases = cases-lag(cases),
         daily_deaths = deaths-lag(deaths))

DataFrame 顯示問題行

圖片中最上面的一段文字說明了病例和死亡人數。 它應該說每日病例和每日死亡人數。 道歉

df <- data.frame(col=seq(1:100), col2=seq(from=1, to=200, by=2))
df[c(33, 2),] <- 0

zeros <- as.integer(rownames(df[df$col == 0,])) # detect rows with 0

for (i in zeros){
df[i,"col"] <- 0.5 * df[i+1,"col"]
df[i+1,"col"] <- 0.5 * df[i+1,"col"]
}

抱歉,我使用了自己的簡單示例數據。 但是,如果經過調整,該機制應該會起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM