python - 如何直接从 URL 读取 .dat 文件并访问其中的列?
问题描述
我正在尝试从 URL 访问此文件:
https://data.princeton.edu/wws509/datasets/copen.dat
但是,我无法访问它并将其拆分以用于培训和测试目的。
有人对此有解决方案吗?
谢谢
我运行了以下代码,将数据转换为 html。现在我如何访问数据,例如。如果想要访问某些行和列,我该怎么做?
import urllib.request
weburl=urllib.request.urlopen('https://data.princeton.edu/wws509/datasets/cuse.dat')
print('result code:'+ str(weburl.getcode()))
data=weburl.read()
print(data)
解决方案
为此,您需要在 python中安装requests模块。请求模块
正如@nekomatic 建议的那样,您可以通过此链接将列表转换为正确的格式,将列表列表转换为 pandas DataFrame
import requests
response = requests.get('https://data.princeton.edu/wws509/datasets/copen.dat')
data = response.text // you can use response.json() method in this line
print("data is ")
print(data)
// the url we mentioned given data in text/plain format so response.json() doesn't work
data_by_line = data.split('\n')
for i in range(0,len(data_by_line)):
data_by_line[i] = ' '.join(data_by_line[i].split())
data_by_line[i] = data_by_line[i].split(' ')
print(data_by_line[2][2]) // output will be "low". We have converted data to multidimensional list(data_by_line)
推荐阅读
- google-sheets - 使用谷歌表格在图表中保持单元格引用不变?
- jquery - 使用 php 使用 ajax 上传 jquery 文件
- mysql - 两个表之间的查询慢
- javascript - 滚动 - 内容拉伸动画
- google-sheets - 编码索引匹配以搜索多个列
- reactjs - 不能在 React 功能组件中使用History()
- python-3.x - 如何将一个 cdk 类的输出动态绑定到另一个 cdk 类
- python - Altair '4.1.0' 返回一个空图表
- html - Angular HighCharts:错误:Highcharts 错误 #13
- arrays - C 编程错误:预期的表达式和值不是数组