Python Tutorial이 칼럼에서는 개요 데이터를 소개합니다.
추천(무료): Python tutorial
문서 디렉토리
1. 빅데이터 시대의 기본
빅데이터 현황 데이터 산업 발전:현재 데이터는 폭발적인 성장을 보여주고 있으며 매 순간 다음과 같은 상황이 발생할 수 있습니다.
13,000건 이상의 iPhone 앱 다운로드 98,000건 이상의 Twitter에 새로운 Weibo 게시물
정확성에서 혼란으로
인재 요구 사항은 주로 다음과 같습니다.
데이터 분석가
통계 분석
2. 데이터 분석가의 직업 전망
데이터 분석가가 해결해야 할 문제:수요 예측, 생산 능력 할당
빅데이터 시대에는 데이터를 해석하는 능력이 더욱 필요합니다.
Q: 오븐의 용량이 제한되어 있는데 어떤 종류의 빵을 생산해야 하나요?을 우선적으로 생산합니다.
핵심은 스타 제품을 찾는 것입니다. 이를 위해서는 빵의 전체 매출을 계산한 다음, 전체 매출에서 각 유형의 빵이 차지하는 상대적인 비율을 계산하고, 70%를 차지할 수 있는 제품 조합의 생산을 우선시해야 합니다. 매출액의. 이 분석 방법은 다음과 같이 ABC 분석 방법이라고도 합니다.
마케팅 계획의 효율성을 평가합니다. 통계는 단순히 데이터를 분석하는 것이 아니라 결과를 통해 이루어집니다. 분석의 핵심은 고객 행동에 어떻게 영향을 미칠지 추측하고 이를 구체적인
A: 두 가지 유형의 카피라이팅을 작성하고 일정 기간 동안 실행하여 얼마나 효과적인지 확인하세요.
광고 효과를 비교하는 가장 좋은 방법은 통계적인 무작위 제어 실험을 사용하여 두 가지 유형의 광고를 무작위로 게재하는 것입니다. 일정 시간이 지난 후 어떤 광고 효과가 더 좋은지 관찰한 다음 실적이 더 좋은 광고를 사용하는 것입니다. 대판.
제품 품질 관리 결과와 결과의 원인 사이의 관계를 찾아내는 것이 매우 중요합니다.
좋은 데이터 분석가는 좋은 제품 기획자이자 업계 리더;
IT 기업에서 우수한 데이터 분석가는 회사의 고위 임원이 될 가능성이 높습니다.
데이터 분석가의 작업 흐름은 다음과 같습니다.
데이터 분석가의 세 가지 주요 작업:
데이터 분석가에게 필요한 8가지 기술:
데이터 분석가에게 필요한 세 가지 주요 능력은
전형적인 데이터 분석가의 성장 과정:
3. 데이터 분석가가 되는 길
데이터 분석가가 되기 위한 자기 수양:
데이터 분석가가 갖추어야 할 역량은 다음과 같습니다.
다양한 상황에서 업계 데이터 분석 실무자의 업무 내용 및 책임:
데이터 분석에서 매우 중요한 주제 기초는 수학이지만, 그렇지 않아도 상관없습니다. 수학에 능숙하다면 Python을 사용하여 학습할 수 있습니다.
Python은 프로그래밍 언어일 뿐만 아니라 데이터 마이닝, 기계 학습 및 기타 기술의 기초로서 자동화된 작업 흐름 구축을 용이하게 합니다.
시작하기; Python을 사용하는 것은 어렵지 않으며 수학적 요구 사항이 너무 높지 않습니다. 이는 중요합니다. 당신이 해야 할 일은 알고리즘 논리를 언어로 표현하는 방법을 아는 것입니다.
Python에는 많은 패키지 도구 라이브러리와 명령이 있습니다. 문제를 해결하고 구축하기 위해 어떤 수학적 방법을 사용하는 것입니다.
Python 데이터 분석을 빠르게 시작하려면 Python 관련 툴킷을 잘 활용해야 합니다.
(1) Python의 가장 큰 특징은 거대하고 활동적인 과학 컴퓨팅 커뮤니티가 있다는 것입니다. 과학 컴퓨팅에 Python을 사용하는 추세도 점점 더 분명해지고 있습니다.
(2) Python은 지속적으로 라이브러리를 개선했기 때문에 데이터 처리 작업의 주요 대안이 되었습니다. 일반 프로그래밍의 강력한 강점과 결합하여 Python 응용 프로그램만 사용하여 다음을 포함하는 데이터 중심 응용 프로그램을 구축하는 것이 완전히 가능합니다.
2. Python 설치 및 환경 구성
1.Python 버전
Python은 3.X와 2.X의 두 가지 주요 버전으로 나뉩니다.
Python 버전 3.0은 종종 Python 3000 또는 줄여서 Py3k라고 합니다. 이는 이전 버전의 Python에 비해 주요 업그레이드입니다.
Python 3.X는 너무 많은 부담을 주지 않기 위해 하위 호환성을 염두에 두고 설계되지 않았습니다. 이전 Python 버전용으로 설계된 많은 프로그램은 Python 3에서 제대로 실행되지 않습니다.
대부분의 타사 라이브러리는 Python 3.X 버전과 호환되도록 열심히 노력하고 있습니다.
2. 다른 시스템에 Python 설치
(1) Unix 및 Linux 시스템
./configure
스크립트 실행./configure
脚本make
make install
make
make install
을 계속 클릭하세요. brew install python
安装新版本。
3.环境变量配置
Windows系统需要配置环境变量。
如果在安装Python时没有选择添加环境变量,则需要手动添加,需要将安装Python的路径XXXPythonXXX
和XXXPythonXXXScripts
添加到环境变量,有两种方式:
path=%path%;XXXPythonXXX
和path=%path%;XXXPythonXXXScripts
即可。XXXPythonXXX
和XXXPythonXXXScripts
安装路径,如下:最后依次点击确认退出即可。
4.安装pip
pip是Python中的包安装和管理工具,在安装Python时可以选择安装pip,在Python 2 >=2.7.9或Python 3 >=3.4中自带。
如果没有安装pip,可以通过命令安装:
pip install -U pip
python -m pip install -U pip
brew install python
을 실행하여 새 버전을 설치할 수 있습니다. 3. 환경 변수 구성
Windows 시스템에서는 환경 변수를 구성해야 합니다.
Python 설치 시 환경 변수 추가를 선택하지 않은 경우 Python XXXPythonXXX
및 XXXPythonXXXScripts
를 설치할 경로를 수동으로 추가해야 합니다. 환경 변수에는 두 가지 방법이 있습니다. 명령줄 추가 CMD에서 path=%path%;XXXPythonXXX
와 path=%path%;XXXPythonXXXScripts
를 각각 실행합니다. 시스템 설정에서
컴퓨터를 마우스 오른쪽 버튼으로 클릭 → 속성 → 고급 시스템 설정 → 시스템 속성 → 환경 변수 → 경로 두 번 클릭 → XXXPythonXXX
및 XXXPythonXXXScripts 추가 code> 설치 경로는 다음과 같습니다.
마지막으로 확인을 클릭하여 종료하세요.
4. pip 설치
pip는 Python 설치 시 pip 설치를 선택할 수 있습니다. Python 2 >=2.7.9 또는 Python 3 >=3.4입니다. pip가 설치되지 않은 경우 다음 명령을 통해 설치할 수 있습니다:
Linux 또는 Mac
pip install -U pip
Windows(cmd 입력)python -m pip install -U pip
5. 통합 개발 환경 선택Python에는 PyCharm 등 다양한 편집기가 있습니다. 여기서 PyCharm을 선택하세요. PyCharm은 JetBrains에서 만든 Python IDE로, Mac OS를 지원합니다. 윈도우, 리눅스 시스템.
디버깅, 구문 강조, 프로젝트 관리,
코드 점프,
마지막으로 다음을 클릭하세요. 설치가 완료된 후 Win 키(Windows 시스템 아래)를 클릭하면 아래와 같이 최근에 추가된 응용 프로그램 목록 A를 볼 수 있습니다.
이때 Anaconda Navigator를 클릭할 수 있습니다. , 아래와 같이 :
환경이 Python 3.8.3임을 알 수 있습니다. Anaconda에서 만든 기본 환경은 base라고 하며 기본 환경이기도 합니다.
Anaconda 명령줄 도구 Anaconda Powershell Prompt를 열고 python -V
를 입력한 다음 Python 3.8.3
도 인쇄하세요. python -V
,也打印Python 3.8.3
。
还可以通过命令创建新的conda环境,如conda create --name py27 python=2.7
执行后即创建了一个名为py27的Python版本为2.7的conda环境。
激活环境执行命令conda activate py27
,停用使用命令conda deactivate
。
可以在命令行中执行conda list
查看已经安装的库,如下:
# packages in environment at E:\Anaconda3: # # Name Version Build Channel _ipyw_jlab_nb_ext_conf 0.1.0 py38_0 alabaster 0.7.12 py_0 anaconda 2020.07 py38_0 anaconda-client 1.7.2 py38_0 anaconda-navigator 1.9.12 py38_0 ... zlib 1.2.11 h62dcd97_4 zope 1.0 py38_1 zope.event 4.4 py38_0 zope.interface 4.7.1 py38he774522_0 zstd 1.4.5 ha9fde0e_0
3.conda工具的介绍和包管理
conda是Anaconda下用于包管理和环境管理的工具,功能上类似pip和virtualenv的组合,conda的环境管理与virtualenv是基本上是类似的操作。
安装成功后conda会默认加入到环境变量中,因此可直接在命令行窗口运行conda命令。
常见的conda命令和含义如下:
命令含义 | conda命令 |
---|---|
conda –h | 查看帮助 |
基于python3.6版本创建名为python36的环境 | conda create --name python36 python=3.6 |
激活此环境 | activate python36(Windows)、source activate python36(linux/mac) |
查看python版本 | python -V |
退出当前环境 | deactivate python36 |
删除环境 | conda remove -n py27 --all |
查看所有安装的环境 | conda info -e |
conda的包管理常见命令如下:
包管理命令意义 | 包管理命令 |
---|---|
安装matplotlib | conda install matplotlib |
查看已安装的包 | conda list |
包更新 | conda update matplotlib |
删除包 | conda remove matplotlib |
在conda中,anything is a package一切皆是包
conda create --name py27 python=2.7
과 같은 명령을 통해 새 conda 환경을 생성할 수도 있습니다. 실행 후 py27이라는 Python 버전 2.7이 포함된 conda 환경이 생성됩니다. 명령줄에서 conda list 를 실행하면 다음과 같이 설치된 라이브러리를 볼 수 있습니다. |
3. Conda 도구 소개 및 패키지 관리 |
---|---|
및 | Environment Management도구는 기능적으로 pip와 virtualenv의 조합과 유사합니다. Conda의 환경 관리와 virtualenv는 기본적으로 유사한 작업입니다. | 성공적으로 설치되면 기본적으로 conda가 환경 변수에 추가되므로 명령줄 창에서 직접 conda 명령을 실행할 수 있습니다.
conda 명령 |
모든 것이 패키지이고 모든 것이 패키지입니다
, conda 자체도 패키지로 간주할 수 있습니다. python 환경 패키지로서 anaconda도 패키지로 간주될 수 있으므로 업데이트를 지원하는 일반 타사 패키지 외에도 이 세 가지 패키지는 다음 명령도 지원합니다. 🎜 Conda 자체 업데이트🎜🎜conda update conda🎜🎜🎜🎜Update anaconda application🎜🎜conda update anaconda🎜🎜🎜🎜Update Python, 현재 Python 환경이 3.8.1이고 최신 버전이 3.8.2라고 가정하면 다음과 같습니다. 3.8로 업그레이드 .2🎜🎜conda 업데이트 python🎜🎜🎜🎜四、Jupyter Notebook
1.Jupyter Notebook基本介绍
Jupyter Notebook(此前被称为IPython notebook)是一个交互式笔记本,支持运行40多种编程语言。
在开始使用notebook之前,需要先安装该库:
(1)在命令行中执行pip install jupyter
来安装;
(2)安装Anaconda后自带Jupyter Notebook。
在命令行中执行jupyter notebook
,就会在当前目录下启动Jupyter服务并使用默认浏览器打开页面,还可以复制链接到其他浏览器中打开,如下:
可以看到,notebook界面由以下部分组成:
(1)notebook名称;
(2)主工具栏,提供了保存、导出、重载notebook,以及重启内核等选项;
(3)notebook主要区域,包含了notebook的内容编辑区。
2.Jupyter Notebook的使用
在Jupyter页面下方的主要区域,由被称为单元格的部分组成。每个notebook由多个单元格构成,而每个单元格又可以有不同的用途。
上图中看到的是一个代码单元格(code cell),以[ ]
开头,在这种类型的单元格中,可以输入任意代码并执行。
例如,输入1 + 2
并按下Shift + Enter
,单元格中的代码就会被计算,光标也会被移动到一个新的单元格中。
如果想新建一个notebook,只需要点击New,选择希望启动的notebook类型即可。
简单使用示意如下:
可以看到,notebook可以修改之前的单元格,对其重新计算,这样就可以更新整个文档了。如果你不想重新运行整个脚本,只想用不同的参数测试某个程式的话,这个特性显得尤其强大。
不过,也可以重新计算整个notebook,只要点击Cell -> Run all
即可。
再测试标题和其他代码如下:
可以看到,在顶部添加了一个notebook的标题,还可以执行for循环等语句。
3.Jupyter中使用Python
Jupyter测试Python变量和数据类型如下:
测试Python函数如下:
测试Python模块如下:
可以看到,在执行出错时,也会抛出异常。
测试数据读写如下:
数据读写很重要,因为进行数据分析时必须先读取数据,进行数据处理后也要进行保存。
4.数据交互案例
加载csv数据,处理数据,保存到MongoDB数据库
有csv文件Python 데이터 분석 실용 개요 데이터 분석.csv和Python 데이터 분석 실용 개요 데이터 분석.csv,分别是商品数据和用户评分数据,如下:
如需获取数据、代码等相关文件进行测试学习,可以直接点击加QQ群 963624318 在群文件夹Python数据分析实战中下载即可。
现在需要通过Python将其读取出来,并将指定的字段保存到MongoDB中,需要在Anaconda中执行命令conda install pymongo
安装pymongo。
Python代码如下:
import pymongoclass Product: def __init__(self,productId:int ,name, imageUrl, categories, tags): self.productId = productId self.name = name self.imageUrl = imageUrl self.categories = categories self.tags = tags def __str__(self) -> str: return self.productId +'^' + self.name +'^' + self.imageUrl +'^' + self.categories +'^' + self.tagsclass Rating: def __init__(self, userId:int, productId:int, score:float, timestamp:int): self.userId = userId self.productId = productId self.score = score self.timestamp = timestamp def __str__(self) -> str: return self.userId +'^' + self.productId +'^' + self.score +'^' + self.timestampif __name__ == '__main__': myclient = pymongo.MongoClient("mongodb://127.0.0.1:27017/") mydb = myclient["goods-users"] # val attr = item.split("\\^") # // 转换成Product # Product(attr(0).toInt, attr(1).trim, attr(4).trim, attr(5).trim, attr(6).trim) Python 데이터 분석 실용 개요 데이터 분석 = mydb['Python 데이터 분석 실용 개요 데이터 분석'] with open('Python 데이터 분석 실용 개요 데이터 분석.csv', 'r',encoding='UTF-8') as f: item = f.readline() while item: attr = item.split('^') product = Product(int(attr[0]), attr[1].strip(), attr[4].strip(), attr[5].strip(), attr[6].strip()) Python 데이터 분석 실용 개요 데이터 분석.insert_one(product.__dict__) # print(product) # print(json.dumps(obj=product.__dict__,ensure_ascii=False)) item = f.readline() # val attr = item.split(",") # Rating(attr(0).toInt, attr(1).toInt, attr(2).toDouble, attr(3).toInt) Python 데이터 분석 실용 개요 데이터 분석 = mydb['Python 데이터 분석 실용 개요 데이터 분석'] with open('Python 데이터 분석 실용 개요 데이터 분석.csv', 'r',encoding='UTF-8') as f: item = f.readline() while item: attr = item.split(',') rating = Rating(int(attr[0]), int(attr[1].strip()), float(attr[2].strip()), int(attr[3].strip())) Python 데이터 분석 실용 개요 데이터 분석.insert_one(rating.__dict__) # print(rating) item = f.readline()
在启动MongoDB服务后,运行Python代码,运行完成后,再通过Robo 3T查看数据库如下:
显然,保存数据成功。
使用Jupyter处理商铺数据
待处理的数据是商铺数据,如下:
包括名称、评论数、价格、地址、评分列表等,其中评论数、价格和评分均不规则、需要进行数据清洗。
如需获取数据、代码等相关文件进行测试学习,可以直接点击加QQ群 963624318 在群文件夹Python数据分析实战中下载即可。
Jupyter中处理如下:
可以看到,最后得到了经过清洗后的规则数据。
完整Python代码如下:
# 数据读取f = open('商铺数据.csv', 'r', encoding='utf8')for i in f.readlines()[1:15]: print(i.split(','))# 创建comment、price、commentlist清洗函数def fcomment(s): '''comment清洗函数:用空格分段,选取结果list的第一个为点评数,并且转化为整型''' if '条' in s: return int(s.split(' ')[0]) else: return '缺失数据'def fprice(s): '''price清洗函数:用¥分段,选取结果list的最后一个为人均价格,并且转化为浮点型''' if '¥' in s: return float(s.split('¥')[-1]) else: return '缺失数据'def fcommentl(s): '''commentlist清洗函数:用空格分段,分别清洗出质量、环境及服务数据,并转化为浮点型''' if ' ' in s: quality = float(s.split(' ')[0][2:]) environment = float(s.split(' ')[1][2:]) service = float(s.split(' ')[2][2:-1]) return [quality, environment, service] else: return '缺失数据'# 数据处理清洗datalist = [] # 创建空列表f.seek(0)n = 0 # 创建计数变量for i in f.readlines(): data = i.split(',') # print(data) classify = data[0] # 提取分类 name = data[1] # 提取店铺名称 comment_count = fcomment(data[2]) # 提取评论数量 star = data[3] # 提取星级 price = fprice(data[4]) # 提取人均 address = data[5] # 提取地址 quality = fcommentl(data[6])[0] # 提取质量评分 env = fcommentl(data[6])[1] # 提取环境评分 service = fcommentl(data[6])[2] # 提取服务评分 if '缺失数据' not in [comment_count, price, quality]: # 用于判断是否有数据缺失 n += 1 data_re = [['classify', classify], ['name', name], ['comment_count', comment_count], ['star', star], ['price', price], ['address', address], ['quality', quality], ['environment', env], ['service', service]] datalist.append(dict(data_re)) # 字典生成,并存入列表datalist print('成功加载%i条数据' % n) else: continueprint(datalist)print('总共加载%i条数据' % n)f.close()
更多编程相关知识,请访问:编程教学!!
위 내용은 Python 데이터 분석 실용 개요 데이터 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!