У меня есть некоторые данные, как это:Используя упорядоченный фактор, как timevar в Motion Chart
time var1 var2 idvar
1 Q1 1 4 A
2 Q1 2 3 B
3 Q2 3 2 A
4 Q2 4 1 B
Мне нужно сделать MotionChart
используя каждую четверть (Q1
и Q2
) как раз вар. Я попытался сделать df$time
упорядоченным множителем, но он все равно дает мне ошибку, так как timevar
должен быть в цифровом или формате даты. Есть ли какое-нибудь обходное решение? Мои фактические данные охватывают несколько лет и все 4 квартала каждого года в формате YYYYQn
, который я бы не хотел менять.
Код, я использую в этом примере:
library(googleVis)
df = data.frame(time = c("Q1","Q1","Q2","Q2"),var1 = c(1,2,3,4),var2=c(4,3,2,1),idvar=c("A","B","A","B"))
df$time = ordered(df$time)
g = gvisMotionChart(df,timevar="time",idvar="idvar")
Выход ошибки:
Error : The timevar has to be of numeric or Date format. Currently it is orderedThe timevar has to be of numeric or Date format. Currently it is factor
Спасибо , Поскольку в сообщении об ошибке указано, что функция принимает только числовые или форматы даты, мне не приходило в голову работать с символом (коэффициент выбирается автоматически, когда я использую read.table в своих фактических данных) – Bernardo
@ Бернардо вы можете избежать (a кусок) моего решения с очень полезными «strAsAsFactors = FALSE» при загрузке данных. Этот аргумент делает то, что он говорит * strings как factor *, с 'FALSE' вы будете иметь символы по умолчанию. – SabDeM
Вы правы, я полностью забыл об этом аргументе! Последнее, вы не возражаете, чтобы объяснить «Может ли он обрабатывать характер, если и только если они находятся в определенном формате»? Что это за формат? – Bernardo