2

非常に大きな csv ファイルがあります。ヒストグラムをグラフ化するために、2 列目の項目の頻度を計算したいと考えています。私のデータの例:

0010,10.1.1.16
0011,10.2.2.10
0012,192.168.2.61
0013,192.168.173.19
0014,10.2.2.10
0015,10.2.2.10
0016,192.168.2.61

私は以下を使用しました:

  inFile <- read.csv("file.csv")
  summary(inFile)
  hist(inFile$secondCol)

要約の出力:

  X0010                X10.1.1.16
  Min.   :11.00   10.2.2.10     :3   
  1st Qu.:12.25   192.168.173.19:1   
  Median :13.50   192.168.2.61  :2   
  Mean   :13.50                      
  3rd Qu.:14.75                      
  Max.   :16.00

ファイルが非常に大きいため、正しいヒストグラムが得られません。助言がありますか?

4

2 に答える 2

5

を使用するだけtableです。

DF <- structure(list(V1 = 10:16, V2 = structure(c(1L, 2L, 4L, 3L, 2L, 
             2L, 4L), .Label = c("10.1.1.16", "10.2.2.10", 
             "192.168.173.19", "192.168.2.61"), class = "factor")), 
             .Names = c("V1", "V2"), class = "data.frame", 
             row.names = c(NA, -7L))

table(DF$V2)
#     10.1.1.16      10.2.2.10 192.168.173.19   192.168.2.61 
#         1              3              1              2 

これから data.frame が必要な場合は、次を使用できますas.data.frame

as.data.frame(table(DF$V2))
#             Var1 Freq
# 1      10.1.1.16    1
# 2      10.2.2.10    3
# 3 192.168.173.19    1
# 4   192.168.2.61    2

が必要だと言うので、次のように最初にカウントを取得することなくhistogram、これを直接使用して実行できます。ggplot2

require(ggplot2)
ggplot(data = DF, aes(x = V2)) + geom_histogram(aes(y = ..count..))

ここに画像の説明を入力

于 2013-03-23T14:38:56.670 に答える