2016-06-23 7 views
0

GET functionhttrパッケージを使用してウェブサイトからデータセットを取得しましたが、データは以下のように文字フォーマットになりました。プロットできるようにテーブルに変換するにはどうすればいいですか?どうもありがとう!文字形式のデータを読み取り可能なテーブルに変換する

print(resContent) 

[1] "{\"pTType\":\"line\",\"gBType\":\"line\",\"data\":[[9624,8873,8671,8420,8452,8718,9712,10373,11061,11708,11253,10482,10780,10829,10884,11318,10849,10732],[1635,1244,1361,1493,1695,1478,1838,1787,1824,1985,1983,1802,2030,2253,2251,2127,1972,2023]]}" 

> length(resContent) 
[1] 1 

> typeof(resContent) 
[1] "character" 
+0

これはjson形式のデータのようです。私は検索fを行うかjsonをデータフレームに変換します。 – Benjamin

+2

データを表示するために 'dput'を使用すると便利です( – Batanichek

+0

)ヒストグラムとしてプロットするすべての値が必要です –

答えて

0

最初の2つの要素の名前は列の名前であると仮定しましたが、これは確かなことではありません。それにかかわらず、以下のコードは正しい方向に動かすべきです。

library(rjson) 
library(magrittr) 
resContent <- "{\"pTType\":\"line\",\"gBType\":\"line\",\"data\":[[9624,8873,8671,8420,8452,8718,9712,10373,11061,11708,11253,10482,10780,10829,10884,11318,10849,10732],[1635,1244,1361,1493,1695,1478,1838,1787,1824,1985,1983,1802,2030,2253,2251,2127,1972,2023]]}" 

rjson::fromJSON(resContent)$data %>% 
    as.data.frame() %>% 
    setNames(c("PTType", "gBType")) 
+0

ありがとうございます!これは私が欲しいものを私に与えます。 –

0

以下は、コンマは、あなたが提供した文字列から数字を分離抽出し、数値ベクトルを返します。

as.numeric(unlist(strsplit(gsub("^.*\\[(\\d.*)\\]\\].*$", "\\1", resContent), split=","))) 

[1] 1635 1244 1361 1493 1695 1478 1838 1787 1824 1985 1983 1802 2030 2253 2251 2127 1972 2023 
  • gsubは部分式を抽出し、(コンマの部分文字列が数字を分離)、
  • strsplitは、カンマで区切ります。
  • unlistは、数値のベクトルを返します文字として格納されます。
  • as.numericは数値ベクトルに変換されます。
関連する問題