Я пытаюсь изменить весь столбец значений, но у меня все еще есть проблемы с отсутствием диапазона. Это весь мой код:Применить функцию, вызванную индексом списка за пределами диапазона
# Libraries
import json, requests
import pandas as pd
from pandas.io.json import json_normalize
# Set URL
url = 'https://api-v2.themuse.com/jobs'
# For loop to extract data
for i in range(100):
data = json.loads(requests.get(
url=url,
params={'page': i}
).text)['results']
# JSON to PANDAS
data_norm = pd.read_json(json.dumps(data))
# Modify two columns' values
data_norm.locations = data_norm.locations.apply(lambda x: [{x[0]['name']}])
data_norm.publication_date = pd.to_datetime(data_norm.publication_date)
Проблема здесь состоит в том, что, когда я использую функцию
data_norm.locations = data_norm.locations.apply(lambda x: [{x[0]['name']}])
Я получаю следующее сообщение об ошибке:
IndexError: list index out of range
В идеале, я хочу изменить location
колонки из этого:
0 [{'name': 'Seattle, WA'}]
1 [{'name': 'San Francisco Bay Area'}]
2 [{'name': 'Palo Alto, CA'}]
3 [{'name': 'Reno, NV'}]
4 []
Name: locations, dtype: object
в этом:
0 Seattle, WA
1 San Francisco Bay Area
2 Palo Alto, CA
3 Reno, NV
4
Name: locations, dtype: object
шоу data_norm.head(), чтобы получить лучшую помощь. Тем не менее, звучит так, что индекс data_norm не является целым числом или не имеет 0 в нем по меньшей мере – Boud
@Boud Просто обновил исходное сообщение –