問題タブ [jsonlite]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 元のデータフレーム化された JSON よりも要素が少ないデータ フレームの作成中にエラーが発生しました
このスクリプトでの私の目標は、データフレーム化された JSON データを取得し、それを CSV 出力用のよりスリムなデータ フレームに変換することです。変数はrawData
最終的に約 100 列になります。RStudio でこのスクリプトを実行すると、次のエラーが発生します。
私は R や SQL のような宣言型言語の専門家ではないので、これを簡単に説明していただければ、大いに役立つでしょう。
json - R - 2 つの異なるデータフレームから 2 つの名前を持つネストされた JSON オブジェクトを作成する
のような2つのデータフレームを持つ
final_data2:
およびパス:
jsonlite
次のコードを使用して、同じ JSON で両方のデータフレームを組み合わせることができます。
結果は、次のような配列のセットです。
ただし、生成されたオブジェクトには 2 つの名前 (nodes
とlinks
) が含まれ、それぞれが以前に定義されたデータフレームの 1 つをネストする必要があります。したがって、構造は次のようになります。
それを達成する方法に関するヒントはありますか?
json - Importing JSON data in R to be saved as dataframe
I am trying to import JSON data from a URL and save it as a dataframe. Once I have it in a single rows/columns format dataframe, I want to perform cleaning operations like removing some values and columns.
I am using jsonlite package to automatically parse the data and save in dataframe format. However, it seems to create a list of dataframes instead of one dataframe.
r - R と httr を使用してデータを取得する - ページ分割されたリンク ヘッダーを使用した Okta API GET リクエスト
RStudio / Hadley Wickham 'httr' R パッケージを使用して、Okta API GET 要求 (' List Users Assigned to Application ') からすべてのレコードを返そうとしています。次のリクエストは、呼び出しごとにレコードの最大制限 (500) を取得するために完全に正常に機能します。
「oktagetjson」で返されたデータを「jsonlite」と R を使用して使用可能なデータ フレームに解析することは問題ではありません。ただし、この特定の API 呼び出しは、1 回の呼び出しで最大 500 レコードに制限されているため、すべての「Link:」ヘッダーを何らかの方法で取得してページ分割し、数千のレコードすべてを取得する必要があります。「Link:」ヘッダー自体は次の形式です。
(Okta API のドキュメントでは、ページネーションの構造についてここで説明しています)
私はここで立ち往生しています:
- 「oktagetjson <- with_verbose(content(GET(oktaurl, etc ... ) ...)」を呼び出して oktagetjstonオブジェクトを呼び出しますが、'Link:' ヘッダーはオブジェクト自体の一部として返されません。呼び出し
headers(HEAD("https://mydomain.okta.com/api/v1/apps/<applicationID>/users"))
によっていくつかのヘッダーが返されますが、ページネーションの 'Link:' ヘッダーは返されません - 「Link:」ヘッダーにはランダムなカーソル文字列が含まれているため、実際の形式を推測できません
- 必要な「Link:」ヘッダーをすべて取得できたとしても、R でそれらすべてを呼び出し、反復処理、ページ分割、再帰的に追跡して、数千レコードのデータセット全体のオブジェクトを構築する方法がわかりません。
残念ながら、要求、サービス プロバイダー、およびデータの性質上、実際のリンクとサンプル データを使用して完全に再現可能な例を提供することはできませんが、概念が明確であり、誰かが私を正しい方向に向けてくれることを願っています。この作業に 'httr' パッケージまたは R を使用しないようにします。
ご検討をお願いいたします。
json - jsonliteでfromJSONを使ってJSON変換する際の有効数字
fromJSON
パッケージから使用して JSON を R オブジェクトに変換してjsonlite
いますが、数値が丸められています。変換された数値の精度を制御するにはどうすればよいですか?
例
コードを調べると、parse.c でR_parseへjsonlite
の関数呼び出しを追跡しました。
その他の試み
fromJSON
にはdigits
引数がありますが、 では有効な引数ではありませんtoJSON
。- 他のパッケージも同様
rjson
で、RJSONIO
同様の結果が得られます。
json - ロード前のR jsonliteフィルターレコード
強力なRServerマシンに効率的にロードしたい大きなjsonファイル(それぞれ3G)がたくさんありますが、すべてのファイルからすべてのレコードをロードするのは冗長で疲れます(50Mレコードは40倍になります)。効率がいいと聞いたので、jsonliteパッケージを使うことにしました。問題は、すべてのレコードが必要なわけではなく、埋め込み要素 (「ソース」) に「期間」という名前の既存のフィールドがあるレコードのサブセットのみが必要なことです。これは現在私のコードです:
多くの抜粋のうちの 1 つにすぎません。現在、jsonlite パッケージには、埋め込み要素を平坦化して 1 つの幅の平坦化データ フレームを作成する「平坦化」機能があります。それから私はそれをフィルタリングすることができました。ただし、効率的ではないようです。データが読み込まれるときに事前にフィルタリングする方がはるかに効率的だと思います。ここに1つのレコードのdput:
任意の助けをいただければ幸いです