【问题标题】:R Hist Function with Lattice Package带格包的 R Hist 函数
【发布时间】:2014-07-26 20:18:07
【问题描述】:

我正在学习 R。我正在阅读一本具有以下 hist 函数的书,该函数基本上从直方图中删除 0 值和 >=1000 值。

问题是我不明白代码在说什么,书上也没有解释。

() 里面的条件是什么,为什么 !0 指定了两次?有没有另一种更直观的方法来编写这段代码?我正在使用格子包。

非常感谢您的帮助!

hist(don$TGiving[don$TGiving!=0][don$TGiving[don$TGiving!=0]<=10000])

【问题讨论】:

  • 这个hist()函数与Lattice无关。而且这个命令很奇怪,最好是hist(don$TGiving[don$TGiving!=0 &amp; don$TGiving&lt;=10000])。这是什么书?!?
  • 感谢 lattice 的回复和澄清。这本书是用 R 进行的数据挖掘和业务分析。您的代码更加直观且易于阅读。工作原理完全相同。谢谢!

标签: r histogram lattice


【解决方案1】:

这是一种非常笨拙的方法。如果您使用该表达式的第一部分创建一个临时变量,删除低于 0 的值,然后使用它,也许会更容易看到发生了什么。

 temp <- don$TGiving[don$TGiving!=0]  # remove items below 0
 hist( temp[ temp  < 1000 ] )         # remove items above 1000  and then plot

【讨论】:

    【解决方案2】:

    如果您确实想使用lattice,则应使用histogram() 而不是hist()subset() 也很有用。

     set.seed(101)
     don <- data.frame(TGiving=round(rgamma(1000,shape=5,scale=100)))
     library(lattice)
     histogram(~TGiving,data=subset(don,TGiving!=0 & TGiving<1000))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-21
      • 2022-01-13
      • 1970-01-01
      • 2011-11-16
      • 2022-01-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多