Python:ValueError:如果使用所有标量值,则必须传递索引
我在运行以下代码时出现此错误: txt文件中有9000条记录。可能是因为记录太多了吗Python:ValueError:如果使用所有标量值,则必须传递索引,python,json,pandas,postgresql,time,Python,Json,Pandas,Postgresql,Time,我在运行以下代码时出现此错误: txt文件中有9000条记录。可能是因为记录太多了吗 import sqlalchemy as sa import psycopg2 import requests as rq import pandas as pd import json import time import io start_time = time.time() while True: temp = pd.DataFrame() df = pd.DataFrame()
import sqlalchemy as sa
import psycopg2
import requests as rq
import pandas as pd
import json
import time
import io
start_time = time.time()
while True:
temp = pd.DataFrame()
df = pd.DataFrame()
with open("vehicle_all_bus.txt", encoding="utf-8") as file:
fileList = [line.strip() for line in file]
for ids in fileList:
r = rq.get('https://api.tfl.gov.uk/Vehicle/' + ids + '/Arrivals')
r = r.text
temp = pd.read_json(r)
temp['Type'] = 'ids'
df = pd.concat([df, temp], sort=False).reset_index(drop=True)
engine = sa.create_engine('postgresql+psycopg2://postgres:3434@127.0.0.1/postgres')
df['timing'] = list(map(lambda x: json.dumps(x), df['timing']))
df.to_sql('tfl_all_bus_data2', engine, if_exists='append', index=False)
time.sleep(60)
熊猫可能不喜欢你
json
。Pandas希望值是列表或dict,您可以粘贴摘录吗?或者试试这个pd.read_json('r',typ='series')
可能是因为记录太多了吗?可能不会。请共享整个错误消息以及正确的错误消息。请显示json
的示例。您很可能不需要pandas
,它应该用于数据分析而不是ETL迁移。可能pandas
不喜欢您json
。Pandas希望值是列表或dict,您可以粘贴摘录吗?或者试试这个pd.read_json('r',typ='series')
可能是因为记录太多了吗?可能不会。请共享整个错误消息以及正确的错误消息。请显示json
的示例。您很有可能不需要pandas
,它应该用于数据分析,而不是ETL迁移。
import sqlalchemy as sa
import psycopg2
import requests as rq
import pandas as pd
import json
import time
import io
start_time = time.time()
while True:
temp = pd.DataFrame()
df = pd.DataFrame()
with open("vehicle_all_bus.txt", encoding="utf-8") as file:
fileList = [line.strip() for line in file]
for ids in fileList:
r = rq.get('https://api.tfl.gov.uk/Vehicle/' + ids + '/Arrivals')
r = r.text
temp = pd.read_json(r)
temp['Type'] = 'ids'
df = pd.concat([df, temp], sort=False).reset_index(drop=True)
engine = sa.create_engine('postgresql+psycopg2://postgres:3434@127.0.0.1/postgres')
df['timing'] = list(map(lambda x: json.dumps(x), df['timing']))
df.to_sql('tfl_all_bus_data2', engine, if_exists='append', index=False)
time.sleep(60)