Извлечение данных из фрейма данных в R
Я очень плохо знаком с R (компьютерное программирование в целом) и работаю над проектом биоинформатики. Я создал базу данных MySQL и с помощью RMySQL подключился к этой базе данных на сервере MySQL в R. Отсюда я выполнил запросы для выбора определенного поля из таблицы, извлечения этих данных и преобразования их во фрейм данных в R, как показано ниже:
> rs = dbSendQuery(con, "select mastitis_no from experiment")
> data = fetch(rs, n=-1)
> data
mastitis_no
1 5
2 2
3 8
4 6
5 2
....
> rt = dbSendQuery(con, "select BMSCC from experiment")
> datas = fetch(rt, n=-1)
> datas
BMSCC
1 14536
2 10667
3 23455
4 17658
5 14999
....
> ru = dbSendQuery(con, "select cattle_hygiene_score_avg from experiment")
> dat = fetch(ru, n=-1)
> dat
cattle_hygiene_score_avg
1 1.89
2 1.01
3 1.21
4 1.22
5 1.93
....
Мои первые 2 кадра данных являются целыми числами, а мой третий кадр данных - в десятичном формате. Я могу выполнить простой корреляционный тест для этих фреймов данных, но подробный тест (или график) не может быть выполнен, как показано ниже.
> cor(data, datas)
BMSCC
mastitis_no 0.8303017
> cor.test(data, datas)
Error in cor.test.default(data, datas) : 'x' must be a numeric vector
Поэтому я получил доступ к данным внутри этих фреймов данных с помощью обычного устройства idexing $, но десятичный фрейм данных не работал, как указано ниже.
> data$mastitis
[1] 5 2 8 6 2 0 5 6 7 3 0 1 0 3 2 2 0 5 2 1
> datas$BMSCC
[1] 14536 10667 23455 17658 14999 5789 18234 22390 19069 13677 13536 11667 13455
[14] 17678 14099 15789 8234 21390 16069 13597
> dat$hygiene
NULL
делая это, я могу выполнить корреляционный тест ранга Спирмена и график рассеяния на первых двух кадрах данных, но не на десятичном кадре данных. Любое предложение о том, что мне нужно сделать? Я уверен, что ответ довольно прост, но я не могу найти код, необходимый для этой простой задачи. Любая помощь приветствуется.