【发布时间】:2020-12-16 16:49:07
【问题描述】:
我从以下网站“地下天气”复制并粘贴了天气信息进行一些数据分析,数据如下所示:
https://www.wunderground.com/dashboard/pws/KCACHINO13/table/2018-04-10/2018-04-10/daily
如您所见,温度和其他信息都带有文本,因此我无法进行任何计算。在excel中,我使用了substitute(xx,"F","")从“温度”列中删除了F,但后来我想使用convert(xx,"F","C")将华氏转换为摄氏度,我无法得到结果。我认为数据本身有问题。我将单元格格式化为数字或将值复制并粘贴到新列,但它们都不起作用。
然后我将 data.frame 导入 R 并尝试使用 R 进行一些数据格式化。我检查了温度列的类,它显示“字符”:
class(a$Temperature)
#"character"
a$Temperature <- gsub("F","",a$Temperature)
# this command remmoved "F"
as.numeric(a$Temperature)
#Warning message: NAs introduced by coercion
as.numeric(unlist(a$Temperature))
#still the same warning message
从 excel 中,我创建了从温度中删除“F”的新列,并在 R 中使用它来将“字符”转换为“数字”,但我仍然收到警告消息。我不知道如何处理这个问题。有人可以帮我吗?谢谢!
按照下面的建议,我正在粘贴来自
的输出dput(head(a))
#structure(list(Time = structure(c(-2209075140, -2209074840, -2209074540,
-2209074240, -2209073940, -2209073640), tzone = "UTC", class = c("POSIXct",
"POSIXt")), Temperature = c("60.0 ", "59.9 ", "59.8 ", "59.7 ",
"59.6 ", "59.5 "), `T(F)` = c("60.0 ", "59.9 ", "59.8 ", "59.7 ",
"59.6 ", "59.5 "), `Dew Point` = c("48.2 F", "48.1 F", "48.4 F",
"48.3 F", "48.2 F", "48.1 F"), Humidity = c("65 %", "65 %", "66 %",
"66 %", "66 %", "66 %"), Wind = c("WSW", "WSW", "WSW", "WSW",
"WSW", "WSW"), Speed = c("0.0 mph", "0.0 mph", "0.0 mph", "0.0 mph",
"0.0 mph", "0.0 mph"), Gust = c("0.0 mph", "0.0 mph", "0.0 mph",
"0.0 mph", "0.0 mph", "0.0 mph"), Pressure = c("29.88 in", "29.88 in",
"29.88 in", "29.88 in", "29.88 in", "29.88 in"), `Precip. Rate.` = c("0.00 in",
"0.00 in", "0.00 in", "0.00 in", "0.00 in", "0.00 in"), `Precip. Accum.` = c("0.00 in",
"0.00 in", "0.00 in", "0.00 in", "0.00 in", "0.00 in"), UV = c(0,
0, 0, 0, 0, 0), Solar = c("0 w/m²", "0 w/m²", "0 w/m²", "0 w/m²",
"0 w/m²", "0 w/m²")), row.names = c(NA, -6L), class = c("tbl_df",
"tbl", "data.frame"))
【问题讨论】:
-
什么是$Temperature 打印?我怀疑它是度数符号或数字之间的空格
-
你可以使用
dput(head(your_data_object _here)),运行它并复制结果并将其粘贴到你的帖子中吗? -
a[-c(1,5)] <- lapply(a[-c(1,5)], function(x) as.numeric(gsub("[^\\.[:digit:]]", "", x))). -
@NotThatKindODr 你是对的,有一个度数符号,但它没有显示在 excel 或我的 r data.frame“a”中。我想这就是问题所在。
-
@ThoVu 我将输出粘贴到帖子中:)
标签: r excel character numeric dataformat