在python 3中,我想导入下面链接中找到的带有.data扩展名的网页数据。导入它的代码是什么?
https://archive.ics.uci.edu/ml/machine-learning-databases/auto-mpg/auto-mpg.data
答案 0 :(得分:0)
我的建议是:
知道数据结构,有9列,所以我们只需要8个分割。从阅读数据开始:
with open('auto-mpg.data') as fp:
data = [line.split(maxsplit=8) for line in fp]
现在你可以处理你所拥有的每个细胞。
此功能必须完成这项工作:
import re
def handle(s):
if s == '?':
return None
elif re.match(r'^\d+\.\d+$', s):
return float(s)
elif re.match(r'^\d+$', s):
return int(s, 10)
else:
return s.strip().strip('"')
data = [tuple(map(handle, row)) for row in data]
全部放在一起:
import re
def handle(s):
if s == '?':
return None
elif re.match(r'^\d+\.\d+$', s):
return float(s)
elif re.match(r'^\d+$', s):
return int(s, 10)
else:
return s.strip().strip('"')
with open('auto-mpg.data') as fp:
data = [
tuple(map(handle, row))
for row in (line.split(maxsplit=8) for line in fp)
]
但这一切都是可能的,因为我们知道数据结构。
答案 1 :(得分:0)