[英]How to create a dataframe from urlopen (csv)
My code:我的代码:
# parse json returned from the API to Pandas DF
openUrl = urlopen(url)
r = openUrl.read()
openUrl.close()
#d = json.loads(r.decode())
#df = pd.DataFrame(d, index=[0])
df = pd.DataFrame(r, index=[0])
The error:错误:
ValueError: DataFrame constructor not properly called!
ValueError: DataFrame 构造函数未正确调用!
Help would be aprreacited.将得到帮助。
The DataFrame constructor requires an nd-array like input (or dict, iterable). DataFrame 构造函数需要一个类似 nd 数组的输入(或 dict,可迭代)。
You can use pandas.read_csv
if you want to directly input a csv and get a DataFrame.如果要直接输入 csv 并获得 DataFrame,可以使用
pandas.read_csv
。
Try printing r
to see what is actually inside the response.尝试打印
r
以查看响应中的实际内容。
pandas.read_csv
has a lot of option parameters to handle different types of csv, which of course depends on what you're getting from the url. pandas.read_csv
有很多选项参数来处理不同类型的 csv,这当然取决于你从 url 得到什么。
This snippet might help you.这个片段可能会对你有所帮助。
import urllib.request
import pandas as pd
r = urllib.request.urlopen('HERE GOES YOUR LINK')
x = r.read()
print(type(x))
y = str(x)
df = pd.DataFrame([y], columns=['string_values'])
print (df)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.