使用 Python 从零开始学习数据科学。很简单。

使用 Python 从零开始学习数据科学。很简单。

有朋友伸手问:
“我该如何开始数据科学?我要开课吗?”
无需课程,无需5天听详细资料,玩得开心。
本文的目的是提供一个简单的开始,一个非常简单的开始。

按照这个步骤,你将编写你的第一个 (线性)模型 在 10 分钟内。

第 1 步:安装。

您需要最新的 Python 版本:

按照这个 关联 ,下载并安装

您需要一个 IDE(编写和执行代码的接口):

我爱 皮查姆 : 关注这个 关联 ,下载并安装适合您操作系统的版本(社区版免费)。

你需要一些数据:

kaggle.com 是数据和知识的惊人来源。下载经典的 TITANIC DATA 为例:按照这个 关联 然后按“全部下载”

如果你有这一切,我们准备好了。打开 Pycharm !!

第 2 步:项目设置

您需要设置您的项目,您将在开始一个新项目时执行此操作。
您现在要做的是选择 python 版本并安装要在代码中使用的包。 (如果您以后意识到,您可以随时返回并安装新软件包)。
开始吧:

- 按新项目并选择“Pure Python”。

-在位置选择路径并选择“nameofproject”

- 现在选择使用 virtualenv 的新环境。基本解释器应该是
安装在您的计算机中的 Python 版本。你得去Python37(或者你已经安装的版本,选择python.exe文件)

-创造!!

稍等片刻,让我们创建一个 virtualenv(它将包含您将使用的包的所有信息)

文件 >设置>项目:项目名称>项目解释器。 您应该看到如下内容:

这就是你的环境,只有基本的包 pip 和 setuptools。

我们现在将安装“ 熊猫 ”(读取数据和修改数据),“ 学到了 ”(适用于基本毫升和型号)和“ matplotlib ”用于可视化)。

按“+”(图中的红色圆圈),让我们开始安装数据科学的经典包。

- 搜索“pandas”并安装包。
- 搜索“sklearn”并安装包。
-搜索“matplotlib”并安装包。
设置: 完毕

最后但同样重要的是,在您的项目中创建一个文件夹并将数据复制到其中:

好,我们准备好了。
那没那么难吧??希望不到 5 分钟,因此,作为承诺,我们可以使用另外 5 分钟来编写我们的模型!!。

第 3 步:基本 Python 理解

所以创建一个python 文件 >新建>Python文件 介绍文件名。
例如“主要”。
让我们从基本开始。我们导入包做一个小字,并使用以下代码读取所有数据(复制和粘贴):

 将熊猫导入为 pd  
 从 sklearn 导入预处理  
 从 sklearn.linear_model 导入线性回归  
 从 sklearn.metrics 导入 accuracy_score  
  
 打印(“你好”)  
  
 # 这里我们将使用 pandas 读取 csv,  
 # 它们将作为 DataFrame 存储(定义一些列和行的花哨名称)  
  
 train_df = pd.read_csv("data/train.csv")  
 test_df = pd.read_csv("data/test.csv")  
 real_answer = pd.read_csv("data/gender_submission.csv")

要运行这个小代码,请右键单击文件名并按“ ”,在下面你会看到输出。在这种情况下,唯一的输出是我们“打印”的 HELLO 部分。 (见下图)

希望这能让您了解python是如何工作的,

Pycharm 有一个神奇的工具来查看数据 调试 执行,让我们理解这一点,然后我们可以编写任何我们想要的代码。

这个想法是检查数据和代码发生了什么。在这个例子中,我们将停在我们在 train_df 之后读取 test_df 的地方。

所以我们需要左键单击要“停止”代码的行的边框,会出现一个红点(稍后要删除它,我们应该再次单击返回)。

现在右键单击名称,但不是运行,而是按 DEBUG。它将运行一切并停在红点处。然后我们可以点击“计算器信号”并检查我们的“train_df”变量。它将显示数据,我们可以检查并查看一切是否正确。

第 4 步:您的第一个模型!

好的,我们有想要从中学习的数据 (tran_df) 我们有想要从 (test_df) 预测的数据,并且我们有 test_df 问题的真实答案 (real_answer),所以让我们做一些数学运算。

目标是根据一些特征或变量来预测泰坦尼克号沉没中一个人的生存(或不生存)。

让我们想象一下我们自己在 1912 年回到那里,也就是泰坦尼克号碰撞后的几天,我们的一位家庭成员在泰坦尼克号上,我们不知道她/他是否幸存下来......(当时没有 WhatsApp)。我们有一些来自警方的数据,我们想知道我们所爱的人的机会……

复制下面的代码,按照评论理解......调试,停止分析...。玩弄数据、阈值(0.6 可以很好地工作;))和模型。

 将熊猫导入为 pd  
 从 sklearn 导入预处理  
 从 sklearn.linear_model 导入线性回归  
 从 sklearn.metrics 导入 accuracy_score  
  
 打印(“你好”) **# 这里我们将使用 pandas 读取 csv,  
 # 它们将存储为 DataFrame(定义一些列和行的花哨名称) 保持训练和测试分开很重要,因此没有来自测试的数据用于训练。那是不现实的;)**  
 train_df = pd.read_csv("data/train.csv")  
 test_df = pd.read_csv("data/test.csv")  
 real_answer = pd.read_csv("data/gender_submission.csv")  
  
 **# 如果你看到数据变量 Sex 是一个字符串,做数学我们需要数字  
 # Male 将是一个 Female 将是 0。为此,我们使用 Label Enconder:**  
  
 le = preprocessing.LabelEncoder()  
 le.fit(train_df["Sex"])  
 train_df["Sex_numeric"] = le.transform(train_df["Sex"])  
 test_df["Sex_numeric"] = le.transform(test_df["Sex"])  
  
 **# 我们需要定义哪些是我们的变量或特征以及我们的目标:  
**  
 FEATURES = ["Pclass","Age","Sex_numeric"]  
 目标=“幸存”  
  
 **# 有些模型不理解缺失的数据,所以在这种情况下,我们只删除 NaN(不是数字)**  
  
 train_df = train_df.dropna()  
 test_df = test_df.dropna()  
  
 **# 我们用训练数据拟合我们的模型** reg = LinearRegression().fit(train_df[FEATURES], train_df[Objective])  
  
 **# 我们对测试数据进行预测** test_df["预测"] = reg.predict(test_df[特征])  
  
 **# 这个模型的输出是数字,我们需要二进制你是否幸存下来,让我们应用一个阈值  
**  
 阈值 = 0.5  
 test_df.loc[test_df['Prediction'] > 阈值,'Prediction'] = 1  
 test_df.loc[test_df['Prediction'] < 阈值,'Prediction'] = 0  
  
 **# 我们有预测!!让我们使用PassengerId将预测的数据框与真实答案合并**  
  
 check_df = test_df.merge(real_answer, on="PassengerId",how="left")  
  
 **# 让我们生成并打印准确度** 准确度=准确度分数(check_df[目标],check_df[“预测”]) **# 我们打印准确性!!** print("模型的准确率是:", accuracy)

从那里您可以考虑如何改进……更多功能,更少功能,标签的不同编码,我应该用数字替换 NaN,我可以使用 xgboost 模型吗?会改善吗??还有更多的模型 scikit-learn.org .
玩耍和享受!

附言。希望对于零经验来说足够清楚,让我知道您的想法以及您想了解更多信息

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/7698/22400109

posted @ 2022-09-01 09:24  哈哈哈来了啊啊啊  阅读(50)  评论(0编辑  收藏  举报