Python数据分析(一):工具的简单使用
1、Numpy
安装:pip install numpy
[root@kvm work]# cat numpy_test.py #!/usr/bin/env python #coding:utf-8 from __future__ import print_function # 导入模块并添加别名 import numpy as np # 创建数组 a = np.array([2,0,1,7]) print(a) print(a[:3]) print(a.min()) a.sort() print(a) # 创建二维数据 b = np.array([[1,2,3],[4,5,6]]) print(b) print(b*b) [root@kvm work]# python numpy_test.py [2 0 1 7] [2 0 1] 0 [0 1 2 7] [[1 2 3] [4 5 6]] [[ 1 4 9] [16 25 36]]
简单使用
2、Scipy
安装:pip install Scipy
# coding : utf-8
# 求解非线性方程组2x1 - x2^2 = 1, x1^2 - x2 = 2
# 导入求解方程组的函数
from scipy.optimize import fsolve
# 定义求解方程组
def f(x):
x1 = x[0]
x2 = x[1]
return [2*x1 - x2**2 - 1, x1**2 - x2 - 2]
# 输入初值[1 ,1]并求解
result = fsolve(f, [1, 1])
print(result)
# 数值积分
#导入积分函数
from scipy import integrate
# 定义被积函数
def g(x):
return (1 - x**2)**0.5
pi_2, err = integrate.quad(g, -1, 1) #积分结果和误差
print(pi_2 * 2) #由微积分知识知道结果为圆周率pi的一半
简单使用
3、Matplotlib
安装:pip install matplotlib
# coding: utf-8
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 10 ,1000) #作图的变量自变量
y = np.sin(x) + 1 #因变量y
z = np.cos(x ** 2) + 1 #因变量z
# 设置图像大小
plt.figure(figsize=(8, 4))
# 作图,设置标签、线条颜色、线条大小
plt.plot(x, y, label='$\sin x+1$', color='red', linewidth=2)
# 作图,设置标签、线条类型
plt.plot(x, z, 'b--', label='$\cos x^2+1$')
plt.xlabel('Time(s)') #设置x轴名称
plt.ylabel('Volt') #y轴名称
plt.title('A Simple Example') #标题
plt.ylim(0, 2.2) #显示的y轴范围
plt.legend() #显示图例
plt.show() #显示作图结果
简单使用
作图结果:

4、Pandas
安装:pip install pandas
# coding: utf-8
import pandas as pd
s = pd.Series([1, 2, 3], index=['a', 'b', 'c']) #创建一个序列s
d = pd.DataFrame([[1,2,3],[4,5,6]], columns=['a', 'b', 'c']) #创建一个表
d2 = pd.DataFrame(s) #也可以用已有的序列创建一个表
d.head() #预览前5行数据
d.describe() #数据基本统计量
print(d)
print(d2)
# 读取文件,注意文件的存储路径不能带有中文,否则读取可能出错
pd.read_excel('data.xlsx') # 读取Excel文件,创建DataFrame
pd.read_csv('company_name.csv', encoding='gbk') #读取文本格式的数据
简单使用
5、StatsModels
安装:pip install statsmodels
# coding: utf-8 # 导入ADF校验 from statsmodels.tsa.stattools import adfuller as ADF import numpy as np # 返回的结果有ADF值、p值等 print(ADF(np.random.rand(100)))
简单使用
5、Scikit-Learn
安装:pip install scikit-learn
# coding: utf-8 # 导入线性回归模型 from sklearn.linear_model import LinearRegression # 建立线性回归模型 model = LinearRegression() print(model) # 导入数据集 from sklearn import datasets # 加载数据集 iris = datasets.load_iris() # 查看数据集大小 print(iris.data.shape) # 导入SVM模型 from sklearn import svm # 建立线性SVM分类器 clf = svm.LinearSVC() # 用数据训练模型 clf.fit(iris.data, iris.target) # 训练完成模型之后输入新的数据进行预测 clf.predict([[ 5.0, 3.6, 1.3, 0.25 ]]) #查看训练好模型的参数 print(clf.coef_)
简单使用
Python数据分析(一):工具的简单使用的更多相关文章
- python数据分析的工具环境
python做数据分析的优势: 拥有大量的库为数据分析和处理提供了完整的工具链 随着库还在不断的增加的同时, 算法的实现也更加的创新.Numpy, matplotlib, scipy,scikit-l ...
- python数据分析中常用的库
Python是数据处理常用工具,可以处理数量级从几K至几T不等的数据,具有较高的开发效率和可维护性,还具有较强的通用性和跨平台性,这里就为大家分享几个不错的数据分析工具,需要的朋友可以参考下 Pyth ...
- Python数据分析工具:Pandas之Series
Python数据分析工具:Pandas之Series Pandas概述Pandas是Python的一个数据分析包,该工具为解决数据分析任务而创建.Pandas纳入大量库和标准数据模型,提供高效的操作数 ...
- Python 数据分析中常用的可视化工具
Python 数据分析中常用的可视化工具 1 Matplotlib 用于创建出版质量图表的绘图工具库,目的是为 Python 构建一个 Matlab 式的绘图接口. 1.1 安装 Anaconada ...
- Python包管理工具和多版本环境管理
1. Python包管理工具 在安装Python包的过程中,经常涉及到distutils.setuptools.distribute.setup.py.easy_install.easy_instal ...
- 《Python数据分析与挖掘实战》读书笔记
大致扫了一遍,具体的代码基本都没看了,毕竟我还不懂python,并且在手机端的排版,这些代码没法看. 有收获,至少了解到以下几点: 一. Python的语法挺有意思的 有一些类似于JavaSc ...
- (python数据分析)第03章 Python的数据结构、函数和文件
本章讨论Python的内置功能,这些功能本书会用到很多.虽然扩展库,比如pandas和Numpy,使处理大数据集很方便,但它们是和Python的内置数据处理工具一同使用的. 我们会从Python最基础 ...
- Python测试 ——开发工具库
Web UI测试自动化 splinter - web UI测试工具,基于selnium封装. selenium - web UI自动化测试. mechanize- Python中有状态的程序化Web浏 ...
- Python数据分析必备Anaconda安装、快捷键、包安装
Python数据分析必备: 1.Anaconda操作 Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便 ...
- [python] 使用scikit-learn工具计算文本TF-IDF值
在文本聚类.文本分类或者比较两个文档相似程度过程中,可能会涉及到TF-IDF值的计算.这里主要讲述基于Python的机器学习模块和开源工具:scikit-learn. 希望文章对你有所帮 ...
随机推荐
- 微信小程序 - 开发工具之编译模式
在开发中,遇到一个层级较深的页面,每次都要点击好多步才能调试,也比较闹心,有了自定义编译模式,就方便很多了 点击红圈处, 选择 "+添加编译模式" , 默认的, 启动页面会填入当前 ...
- 常用的easyui使用方法
-------datagrid 1.获取某行的行号(row)tdg.datagrid('getRowIndex',rows)2.通过行号移除该行tdg.datagrid('deleteRow',ind ...
- [Java] 一种好的JAVA分页实现
喃都不说了,贴代码,意思都在代码里面了 Page.java //分页类.定义分页字段信息,供前台页面使用 package com.core.common; import java.util.List; ...
- 学习:100个高质量Java开发者博客
谷歌关键字搜索:100个高质量Java开发者博客. Java开发牛人十大必备网站.
- UNIQLO
UNIQLO品牌的迅销公司建立于1963年,当年是一家销售西服的小服装店.公司现任董事长兼总经理柳井正早年毕业于早稻田大学经济学专业,1972年8月进入迅销公司,1984年9月就任公司董事长兼总经理. ...
- zoj 1081:Points Within(计算几何,判断点是否在多边形内,经典题)
Points Within Time Limit: 2 Seconds Memory Limit: 65536 KB Statement of the Problem Several dra ...
- Oracle的优化器的RBO和CBO方式
1.基于规则的优化方式(Rule-Based Optimization,简称为RBO) 优化器在分析SQL语句时,所遵循的是Oracle内部预定的一些规则,对数据是不敏感的.它只借助少 ...
- WinForm------如何修改PanelControl控件背景色
方法: 如何修改panelcontrol背景色 this.bottomPanel.BorderStyle = BorderStyles.NoBorder; this.bottomPanel.Appea ...
- kotlin gradle的修改
Kotlin插件包括一个让我们配置Gradle的工具.但是我还是倾向于保持我对Gradle文件读写的控制权,否则它只会变得混乱而不会变得简单.不管怎么样,在使用自动工具之前知道它是怎么工作的是个不错的 ...
- std::stringstream(1)
在编写应用程序时,我们经常要使用到字符串.C++标准库中的<string>和<sstream>为我们操作字符串提供了很多的方便,例如:对象封装.安全和自动的类型转换.直接拼接. ...