R中需要所有数据行中的数据帧输出或只需要1个标头

Bhagyashree Patil

以下是数据集:

> head(u1spdf)

           coordinates A Latitude Longitude Altitude Date.No..Of.days            DateTime  geodist tdiff  
1  (116.3184, 39.9847) 1 39.98470  116.3184      492         39744.12 2008-10-23 02:53:04  0.00000     0  
2 (116.3184, 39.98468) 2 39.98468  116.3184      492         39744.12 2008-10-23 02:53:10  3.52000     6  
3 (116.3184, 39.98469) 3 39.98469  116.3184      492         39744.12 2008-10-23 02:53:15  2.83000     5  
4 (116.3184, 39.98469) 4 39.98469  116.3184      492         39744.12 2008-10-23 02:53:20  2.74000     5  
5 (116.3183, 39.98465) 5 39.98465  116.3183      492         39744.12 2008-10-23 02:53:25 11.03000     5  
6  (116.318, 39.98461) 6 39.98461  116.3180      493         39744.12 2008-10-23 02:53:30 20.81404     5

我需要giodist大于200m且tdiff大于1200秒的条目

geodist是2点之间的距离,并且tdiff是2点之间的时间差

我已经为此执行以下算法:

i <- 0 
pointNum <- nrow(u1spdf)  #the number of GPS points
while (i < pointNum) {
    j <- i+1; Token <- 0;
    while (j < pointNum) {
        cdist <- u1spdf$geodist[i+1]   #calculated the distance between points 
        #message("cdist: ",cdist)
        if (cdist > 200 | cdist ==0)  {
            ctime <- u1spdf$tdiff[i+1]  #calculated the time span between two points 
            #message("ctime: ",ctime)
            if (ctime > 1200 | ctime ==0 )  {
                print(u1spdf[i+1, ])
                i <- j
                Token <- 1 
            }
        }
        break

        j <- j+1
    }

    if (Token!=1) {    
        i <- i+1
    }

该算法给出了以下输出:

              coordinates   A Latitude Longitude Altitude Date.No..Of.days            DateTime  geodist tdiff  
149  (116.2868, 39.99578) 149 39.99578  116.2868      716         39744.17 2008-10-23 04:08:07 1727.514  3772    
             coordinates   A Latitude Longitude Altitude Date.No..Of.days            DateTime  geodist tdiff   
471 (116.3202, 40.00478) 471 40.00478  116.3202      105          39744.4 2008-10-23 09:42:25 690.0795 18453

需要将此输出作为1个数据帧或每次重复其标头

你能建议我如何获得以上作为数据集的输出

君士坦丁

R非常适合与其他对象建立索引...

meets_conditions = (u1spdf$geodist > 200 & u1spdf$tdiff > 1200)
your_desired_output = u1spdf[meets_conditions, ]

为了提供解释,它meets_conditions是一个二进制向量,其长度与数据帧中的行数相同u1spdf它指示哪些行满足指定条件。随后,我们可以使用它来指示我们要从原始数据框中选择哪些行,以分配给名为的新数据框your_desired_output,也可以u1spdf[meets_conditions, ]直接在其他函数中使用,例如print(u1spdf[meets_conditions, ])

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

需要读取行,但只需要每个订单的最后一个数据

我的输出中只需要两位小数

当我只需要计数而无需阅读Document-Db数据库中的所有文档时,如何使用Linq构造IQueryable查询?

在C:2中,我只需要一个printf输出。

循环查看 R 中的所有数据帧

在文本后搜索BeautifulSoup,需要从表行中获取所有数据

如果只需要一个用户数据,为什么要获得所有用户数据?

从列表中删除至少包含 x 个值的所有数据帧行

只需要从访问数据库中的查询中提取/导出 2 列到 excel

数据库中的数百万行,只需要这么多

只需要选择列表中至少存在一个值的那些行

验证输入数组只需要在JavaScript中填充1个随机字段

如何使用ng-repeat显示来自API的所有值,而我只需要显示所有对象中的一个键值?

只需要1个输入。需要很多输入

Laravel只需要从链接在第一个表中的第二个表中获取数据

在Spark中,如果数据帧中没有行,如何在文件中写入标头?

将数据库从服务器复制到本地数据库(我只需要复制结构,没有数据)

在R中按列和组组合数据帧中的所有数据

给定一个值或常量,我只需要在Pandas上输出相关行

Pyspark 数据帧重新分区将所有数据放在一个分区中

使用Yii Framework在数据库中查询具有datetime类型的字段。我只需要按日期查询

在 rxjs 中,我尝试先获取所有数据,然后我需要继续下一行

只需要匹配正则表达式中数据包的第二次出现

如何获取只需要获取一次的数据

提交按钮在表格数据下呈现。我只需要一个提交按钮

python 3中是否有办法使两个用户定义的函数只需要输入一次

如何为R中另一个数据帧的每个ID复制数据帧的所有行?

只需要返回源字段,没有任何元数据-如何使用插件?

filter()或subset()列表中存储的所有数据帧