質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
bash

bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

terminal

Terminalは、Apple社のmacOSに標準で付属しているUNIX端末エミュレータ。UNIXコマンドによってMacの操作および設定を行うことができます。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

1141閲覧

jsonファイルから変換されたcsvファイルをもっと扱いやすくしたい

momokoko

総合スコア38

bash

bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

terminal

Terminalは、Apple社のmacOSに標準で付属しているUNIX端末エミュレータ。UNIXコマンドによってMacの操作および設定を行うことができます。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/05/31 03:49

jsonファイルをcsvにした方法

pandasでcsv形式にしました。扱いにくく困っています。
変換されたcsvファイルです。

,results 0,"{'series': [{'name': 'tempra', 'columns': ['time', 'channel', 'counter', 'debug', 'dev_id', 'gtw_id', 'gw_lat', 'gw_lng', 'humidity', 'lat', 'lng', 'loc_name', 'port', 'pressure', 'rssi', 'site_id', 'snr', 'temp', 'volt'], 'values': [['2020-05-28T13:41:43.290263351Z', 5, 0, None, 'm130', 'eui-00800000a00042f1', 34.0000, 138.0000, None, 34.617293, 138.197236, '新谷南', None, None, -56, '3', 6.8, 18.3, 2.7800000000000002], ['2020-05-28T13:41:21.17467173Z', 7, 0, None, 'cha020', 'eui-00800000a00042e4', 34.7002, 138.15964, 96.5, 34.694145, 138.0000, '倉庫前', None, 1003.1, -115, '11', -13, 17.6, 3.47]

ほしい情報はtimeとloc_nameとtempで最終的には下のような表を作りたいです。

イメージ説明

元のjsonファイルです。

{ "results": [ { "series": [ { "name": "tempra", "columns": [ "time", "channel", "counter", "debug", "dev_id", "gtw_id", "gw_lat", "gw_lng", "humidity", "lat", "lng", "loc_name", "port", "pressure", "rssi", "site_id", "snr", "temp", "volt" ], "values": [ [ "2020-05-28T13:41:43.290263351Z", 5, 0, null, "m130", "eui-00800000a00042f1", 34.000, 138.000, null, 34.0000, 138.0000, "新谷南", null, null, -56, "3", 6.8, 18.3, 2.78 ],

なにをどうすればいいのかすらわかない状態です。
ご教授いただければ嬉しいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

前回、回答してるんですけどね…
最終目的がCSVでは無く表データなら結果をpandasに入れます。

python

1import json 2import pandas as pd 3with open('in.json') as f: 4 data=json.load(f)['results'][0]['series'][0] 5cols=data['columns'] 6vals=data['values'] 7 8df=pd.DataFrame(vals,columns=cols) 9print(df[["time","loc_name","temp"]]) 10 11# time loc_name temp 12# 0 2020-05-28T13:41:43.290263351Z koko 18.3 13# 1 2020-05-28T13:41:21.17467173Z momo 17.6

投稿2020/05/31 05:23

x98000

総合スコア1096

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

momokoko

2020/05/31 11:21

ご回答ありがとうございます! 目的の形にすることができました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問