【问题标题】:How to use datatable in R for filter by rows and columns?如何使用 R 中的数据表按行和列进行过滤?
【发布时间】:2021-03-31 01:20:27
【问题描述】:

我有一个数据框,我使用 DT 包。我想按列和行过滤。为简单起见,我有这个数据框

library(DT)
datatable(mtcars)

例如,我想按 hp 和 car 过滤列。这意味着按行和列过滤。实际上,我的数据框包含玩家姓名的行和具有相同玩家姓名的列,并且每个单元格都有一个玩家胜过另一个玩家的概率。这就是为什么我想要一种更快的方法来按行和列进行过滤,因为有这么多玩家。 我试图阅读文档,但没有我想要的示例。通过阅读我得到了这个代码

library(DT)
datatable(mtcars, selection = 'multiple' target = list(rows = 1, cols = 2)))

输出是一样的。我还读到了闪亮的应用程序可能会完成这项工作。

总而言之,我希望能够按交互式数据框的行和列进行过滤

【问题讨论】:

    标签: r datatable


    【解决方案1】:

    如果您将 row.names 变成它自己的列,您将返回仅过滤列,对吗?

    如果是这样,你可以试试这个:

    
    library(DT)
    library(tibble)
    
    datatable(
        rownames_to_column(mtcars,"Car"),
        filter="top"
    )
    
    

    【讨论】:

    • 此代码也仅按行过滤。我想要的是按行和列过滤。例如,能够选择 Datsun 710 的 hp 值
    • 例如,删除除 hp 之外的所有其他列?或者你所说的“挑选”是什么意思?
    • 是的!正是这样。这只是一个例子,实际上,这些是玩家的名字,我有 110 个玩家。所以我有一个包含 110 列和 110 行的数据框,这就是为什么我要删除除我选择的列之外的所有列。例如,如果我想查看 wt 和 Merc 280,只需键入这些单词,我将只保留 Merc 280 的行和 wt 列。
    猜你喜欢
    • 1970-01-01
    • 2017-05-16
    • 2020-10-25
    • 1970-01-01
    • 2021-01-07
    • 2019-12-28
    • 2021-11-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多