python - 如果 csv 存储为变量,您如何使用 pandas read_csv() 方法?
问题描述
我正在尝试处理谷歌电子表格中的数据,将其读入 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)
无论我尝试什么,我总是会收到 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"])
推荐阅读
- javascript - 通过 JQuery AJAX Post 请求的 PHPSESSID 不一致
- shopify - 如何在 Shopify 中访问 config.yml 文件
- c# - 当他们获得/失去焦点时,在 XAML 中将一个元素重叠在另一个元素之上的方法是什么?
- python-3.x - 使用 DiscordPy 将角色分配给另一个用户
- javascript - 哪些 HTML 属性在 Javascript 上有不同的名称?
- python - 如何从一系列三角形中获得中间曲线(一系列中间点)?
- javascript - 正则表达式将基本算术与字母匹配并将它们分组
- json - 以角度迭代打字稿中的json文件?
- amazon-ec2 - 使用 dask labextensions 连接到远程集群
- java - 从浏览器角度+ spring boot + jwt尝试时获得500内部服务“在SecurityContext中找不到身份验证对象”