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

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

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

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

NumPy

NumPyはPythonのプログラミング言語の科学的と数学的なコンピューティングに関する拡張モジュールです。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

Q&A

0回答

744閲覧

jsonfileを、csvに書き込む際のError!!!!!!!

Alisax

総合スコア2

JSON

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

NumPy

NumPyはPythonのプログラミング言語の科学的と数学的なコンピューティングに関する拡張モジュールです。

pandas

Pandasは、PythonでRにおけるデータフレームに似た型を持たせることができるライブラリです。 行列計算の負担が大幅に軽減されるため、Rで行っていた集計作業をPythonでも比較的簡単に行えます。 データ構造を変更したりデータ分析したりするときにも便利です。

0グッド

0クリップ

投稿2021/12/30 03:37

編集2021/12/30 04:16

前提・実現したいこと

大変お世話になっております。
初歩的な質問で申し訳有りません。

jsonfileを、csvに書き込みたいと思っています。
ですが、このようなエラーが出てしまいました。初めての作業で正直どこが間違ってるのかっていうのがわかりかねてる次第です。

データセットはこちら、
参考にしたcode
となっております。
どうかご一助いただけると幸いです。
何卒よろしくお願いします

発生している問題・エラーメッセージ

0it [00:33, ?it/s] --------------------------------------------------------------------------- TypeError Traceback (most recent call last) /tmp/ipykernel_20/986072049.py in <module> 5 review = json.loads(line) 6 # print(review) ----> 7 data['id'].append(review['images']['id'][0:484]) 8 data['width'].append(review['images']['width'][0:484]) 9 data['height'].append(review['images']['height'][0:484]) TypeError: list indices must be integers or slices, not str

該当のソースコード

data = {'id': [], 'width': [], 'height': [], 'file_name': [], 'original_filename': [],'url': []} with open('../input/sartorius-cell-instance-segmentation/LIVECell_dataset_2021/annotations/LIVECell/livecell_coco_train.json') as f: for line in tqdm(f): review = json.loads(line) # print(review) data['id'].append(review['images']['id'][0:484]) data['width'].append(review['images']['width'][0:484]) data['height'].append(review['images']['height'][0:484]) data['file_name'].append(review['images']['file_name'][0:484]) data['original_filename'].append(review['images']['original_filename'][0:484]) data['url'].append(review['images']['url'][0:484]) # data['stars'].append(review['stars']) # data['text'].append(review['text'])

試したこと

文字なので、数字にして下さいとおっしゃってると思うのですが、どこを変更していいのかわかりかねます。
よろしくお願いします。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

macbookpro 16

イメージ説明

imagesは必要だと思います。

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

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

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

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

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

Supernove

2021/12/30 03:46

[0:484]は何のためにやっているんですか?
melian

2021/12/30 03:55

コンペティションに参加しないとデータセットが入手できないので憶測になりますが、 data['id'].append(review['images']['id'][0:484]) は data['id'].append(review['id'][0:484]) とするのではないでしょうか(['images']は不要)。
Alisax

2021/12/30 04:13

0it [00:38, ?it/s] --------------------------------------------------------------------------- KeyError Traceback (most recent call last) /tmp/ipykernel_20/3023688857.py in <module> 5 review = json.loads(line) 6 # print(review) ----> 7 data['id'].append(review['id'][0:484]) 8 data['width'].append(review['width'][0:484]) 9 data['height'].append(review['height'][0:484]) KeyError: 'id' このように、なってしまいます。
melian

2021/12/30 04:20

なるほど、画像をみると review['images'][0]['id'] となっているのかもしれませんね。 [0-100] というラベルが付いている部分を開いてみると内部構造が判るかと思います。
Alisax

2021/12/30 04:31

ありがとうございます。 data = {'id': [], 'width': [], 'height': [], 'file_name': [], 'original_filename': [],'url': []} i=0 with open('../input/sartorius-cell-instance-segmentation/LIVECell_dataset_2021/annotations/LIVECell/livecell_coco_train.json') as f: for line in tqdm(f): review = json.loads(line) for i in range(len(review['images'])): # print(review) data['id'].append(review['images'][i]['id']) data['width'].append(review['images'][i]['width']) data['height'].append(review['images'][i]['height']) data['file_name'].append(review['images'][i]['file_name']) data['original_filename'].append(review['images'][i]['original_filename']) data['url'].append(review['images'][i]['url']) こちらでおこなうことができました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問