2013-02-14 3 views
0

DataLink: DataЗагрузка данных выдает

Код:

ccfsisims <- read.csv(file = "F:/Purdue University/RA_Position/PhD_ResearchandDissert/PhD_Draft/GTAP-CGE/GTAP_NewAggDatabase/NewFiles/GTAP_ConsIndex.csv", header=TRUE, sep=",", na.string="NA", dec=".", strip.white=TRUE) 
ccfsirsts <- as.data.frame(ccfsisims) 
ccfsirsts[7:25] <- sapply(ccfsirsts[7:25],as.numeric) 
ccfsirsts <- droplevels(ccfsirsts) 
ccfsirsts <- transform(ccfsirsts,sres=factor(sres,levels=unique(sres))) 
ccfsirsts[1:5,] 

Издание:

Итак, если вы проверить столбец "pSVIPM", значения отображаются в dataframe "ccfsirsts" являются отличное от того, что фактически сохраняется в CSV-файле. Эта проблема возникла при загрузке другого набора данных.

В начальной загрузке, то есть «ccfsisims», все, кажется, проверяется. После этого проблема возникает.

Любые мысли о том, почему это происходит?

ответ

3

при загрузке ccfsisims сделать str(ccfsisims) ... (получить в привычку делать это)

вы увидите, что pSVIPM является фактором. Таким образом, as.numeric просто изменит коэффициенты на цифры в порядке появления уровней.

Потому что, если вы посмотрите на свой csv, у вас есть #DIV/0! символов.

попробовать себя:

> length(ccfsisims$pSVIPM[ccfsisims$pSVIPM == "#DIV/0!"]) 
[1] 350 
+0

Итак, это исправление, чтобы избавиться от "# DIV/0!" записи? – iouraich

+0

по существу да, но разве вы не обеспокоены этой проблемой своими данными? –

+0

нет, потому что я знаю источник проблемы. Я вычисляю отношение доли из результатов моделирования для моих переменных, которые сообщаются в процентном изменении в моей модели. Для некоторых симов в переменной нет изменений, поэтому он сообщает об изменении нулевого процента. Я должен был просто поставить условное заявление в мои файлы csv, вычисляя эти доли, чтобы исправить это :) Но спасибо за совет, я ценю это. – iouraich