四种方法下载网络文本数据到本地内存

使用Python从网络下载并导入CSV文件
本文介绍如何使用Python的urllib.request、requests、numpy、pandas等库从网络下载CSV文件,并将其导入为numpy矩阵或pandas DataFrame。通过三种方法实现:直接加载网络数据、使用genfromtxt函数和pandas的read_csv函数。最后,分离数据特征和目标属性进行展示。
import urllib.request

import requests
from io import StringIO

import numpy as np

import pandas as pd
'''
下载网络文件,并导入CSV文件作为numpy的矩阵
'''

# 网络数据文件地址
url = "http://archive.ics.uci.edu/ml/machine-learning-databases/pima-indians-diabetes/pima-indians-diabetes.data"

# 方法一
# ========================================================
# 下载文件
#r = urllib.request.urlopen(url)
# 导入CSV文件作为numpy的矩阵
#dataset = np.loadtxt(r, delimiter=",")

# 方法二
# ========================================================
# 下载文件
#r = requests.get(url)
# 导入CSV文件作为numpy的矩阵
#dataset = np.loadtxt(StringIO(r.text), delimiter=",") # 此处用到 StringIO !!!!!!

# 方法三
# ========================================================
#用genfromtxt直接下载网络文件,并将CSV文件导作numpy矩阵。爽!!!!!!!!
#dataset = np.genfromtxt(url, delimiter=",")

# 方法四
# ========================================================
# 用pandas.read_csv直接下载网络文件,并将CSV文件导作pandas.DataFrame。
# dataset = pd.read_csv('http://www-bcf.usc.edu/~gareth/ISL/Advertising.csv', index_col=0)
dataset = pd.read_csv(url)

# ========================================================
# separate the data from the target attributes
X = dataset[:,0:7]
y = dataset[:,8]

print(X)
#print(y)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值