Python下载网络文本数据到本地内存的四种实现方法示例

yipeiwu_com6年前Python基础

本文实例讲述了Python下载网络文本数据到本地内存的四种实现方法。分享给大家供大家参考,具体如下:

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)

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python进程与线程操作技巧总结》、《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

python中日期和时间格式化输出的方法小结

本文实例总结了python中日期和时间格式化输出的方法。分享给大家供大家参考。具体分析如下: python格式化日期时间的函数为datetime.datetime.strftime();...

Pycharm学习教程(4) Python解释器的相关配置

Pycharm学习教程(4) Python解释器的相关配置

Python解释器的相关配置,供大家参考,具体内容如下 1、准备工作   (1)Pycharm版本为3.4或者更高。   (2)电脑上至少已经安装了一个Python解释器。   (3)如...

Python的缺点和劣势分析

Python的短板 虽然Python拥有很多优点,但没有哪种编程语言能够胜任所有工 作,因此Python并不能完美地满足一切需求。如果要确定Python是否适 用于当前场景,还需要了解...

python内存动态分配过程详解

python内存动态分配过程详解

一、前言 大多数编译型语言,变量在使用前必须先声明,其中C语言更加苛刻:变量声明必须位于代码块最开始,且在任何其他语句之前。其他语言,想C++和java,允许“随时随地”声明变量,比如...

python 除法保留两位小数点的方法

如下所示: a = 1 b = 3 print(a/b) #方法一: print(round(a/b,2)) #方法二: print(format(float(a)/float(b)...