2017-04-12 120 views
0

我有一个.csv文件包含用户的GPS位置。一列称为位置存储区,其中包含15个经度和纬度的用户。是位置存储内容的示例如下:如何提取csv文件中列的最后一个数字与R

121.49961,25.023201;121.499596,25.023188;121.49961,25.02319;121.4996,25.023182;121.4996,25.023184;121.4996,25.023184;121.4996,25.023174;121.4996,25.023167;121.49959,25.02316;121.49959,25.023146;121.499565,25.023125;121.499565,25.023117;121.49958,25.023111;121.499596,25.023132;121.4996,25.023123 

121.5011,25.02951;121.5011,25.02951;121.50063,25.029524;121.500534,25.029497;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512 

121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512;121.50069,25.029512 

...

我要提取的最后一对从R中的.csv文件经度和纬度的,我该怎么办呢?谢谢。

到目前为止,我已经做了以下步骤:

Trip1 <- read.csv("1.csv", sep = ",", header = TRUE) 
Trip1$location_store 
head(Trip1$location_store) 
LocationTemp <-strsplit(as.character(Location), ";") 
LocationTemp 

控制台导致

... 
[[176]] 
[1] "121.52448,25.073643" "121.52452,25.073673" "121.524574,25.07372" 
[4] "121.524635,25.073753" "121.5247,25.073814" "121.524765,25.07385" 
[7] "121.52485,25.073881" "121.524925,25.073938" "121.52499,25.073973" 
[10] "121.52507,25.074041" "121.52514,25.074095" "121.525185,25.074121" 
[13] "121.525215,25.074146" "121.52523,25.074142" "121.52524,25.074146" 

[[177]] 
[1] "121.52526,25.07417" "121.525276,25.074173" "121.52529,25.074173" 
[4] "121.52529,25.07418" "121.52529,25.074183" "121.52529,25.074183" 
[7] "121.52529,25.07418" "121.5253,25.074179" "121.5253,25.074183" 
[10] "121.5253,25.074188" "121.5253,25.074186" "121.52531,25.074186" 
[13] "121.52531,25.074188" "121.52531,25.074186" "121.52531,25.074186" 

[[178]] 
[1] "121.52531,25.074186" "121.52531,25.074186" "121.525314,25.074188" 
[4] "121.525314,25.07419" "121.525314,25.074188" "121.525314,25.074188" 
[7] "121.525314,25.074188" "121.525314,25.074188" "121.525314,25.074188" 
[10] "121.525314,25.074188" "121.525314,25.074188" "121.525314,25.074188" 
[13] "121.525314,25.074188" "121.525314,25.074188" "121.525314,25.074188" 
... 

但是,我不知道提取最后一对经度和纬度值。

+0

到目前为止你有什么?你有没有读过?以'read.csv2'开始(它是'''分隔的),收集到长形式,然后将纬度/经度分隔成不同的列,在这一点你的数据将是一个整洁的形式,很容易子集。或者只是掏出你需要的东西。 – alistaire

+0

E.g. '库(tidyr);位置< - read.csv2('file.csv'); locations_tidy < - locations%>%gather()%>%separate(value,c('lat','lon'),sep =',',convert = TRUE); locations_tidy%>%tail(1)' – alistaire

+0

嗨,alistaire,感谢您的建议,我添加了更多的代码,至今我已经完成了,您能否发表评论? –

回答

0

虽然这是一种马虎,这应该得到你想要从你当前的代码。

last_values_per_user <- lapply(1:length(LocationTemp), 
    function(i) unlist(strsplit(LocationTemp[[i]][[15]],",")) 
+0

非常感谢,我会尝试你的解决方案。 –

相关问题