hap*_*rld 6 python csv pandas python-requests
我正在尝试处理 google 电子表格中的数据,将其读入 csv,然后使用 pandas.read_csv() 将其作为数据框处理。
我可以将 csv 读出到一个变量中(下面的变量“数据”),但不能在变量上使用 pandas.read_csv() 。我尝试使用 os.cwd() 等将其转换为字符串。
r = requests.get('I put my google sheets url here')
data = r.text
print(data)
#csv is printed out properly
df = pd.read_csv(filepath_or_buffer = data, header = 1, usecols = ["Latitude", "Longitude"])
print(df)
Run Code Online (Sandbox Code Playgroud)
无论我尝试什么,我总是得到一个 FileNotFoundException。
我是 python 新手,所以我可能错过了一些非常明显的东西。谢谢!
如果 to 的第一个参数read_csv是一个字符串(就像你的情况一样),它会将它视为它试图打开的文件路径。因此出现了 FileNotFoundException。
您需要将数据存放在类似文件的对象中。尝试使用 io.StringIO 像这样:
import io
r = requests.get('I put my google sheets url here')
data = r.text
buffer = io.StringIO(data)
df = pd.read_csv(filepath_or_buffer = buffer, header = 1, usecols = ["Latitude", "Longitude"])
Run Code Online (Sandbox Code Playgroud)
您可以使用 StringIO 来做到这一点:
import pandas as pd
import io
import requests
url="I put my google sheets csv url here"
s=requests.get(url).content
c=pd.read_csv(io.StringIO(s.decode('utf-8')))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3022 次 |
| 最近记录: |