【R和Python对比】数据导入和初步整理

本文探讨了R和Python在数据提取、清洗和初步整理过程中的异同。作者分享了R的包管理和数据读取方式,并对比了Python的相应操作。文章指出,虽然Python的灵活性和扩展性更强,但R在某些数据分析任务上更为便捷。通过实例展示了如何在Python中使用pandas进行数据操作,如查看数据、描述统计和处理缺失值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

现在为止,大概用半年的时间了解R,包括基础的数据清洗和处理、统计分布、ggplot的画图、机器学习建模以及R的爬虫。可以说到现在为止,R已经成了数据分析不可或缺的工具,并且确实提高了效率和扩展了数据分析的广度。然而正如从小白的excel到excel函数到vba到R的进化一样,尽管电脑的12G内存可以处理千万级数据,正如excel和R的比较:excel只能处理统计性数据,但是R除了可以直接处理数据以外,还可以爬取数据,建模等一系列工作,并且可以修改本地的文件等等,但是还不够,因为python的扩展性更强,可以囊括爬虫、网络后台、数据科学、作图(好像一直是python的弱项?)等一系列功能。

扫过一眼《利用python进行数据分析》,里面讲的应用pandas和numpy包进行数据处理和清洗,但是怎么也看不进去,究其原因是这本书不太适合我;如果我没有学过R,这本书是一本非常好的入门教材,然而对于学习过其他语言的(SPSS/SAS/R)的人来说,基本上有一套数据分析的思路和流程,反而类比来看效果会更好;未来希望可以对比着研究R和python的关系和语法区别,希望三个月内,python可以用的像R一样熟练。

简单来说,数据分析步骤就是:

提取–清洗–探索–挖掘

先说提取数据,这部分主要针对研究的方面,进行数据的提取,提取包含从服务器中进行数据的初步提取,也就是SQL的提取;或者从网络上提取,也就是R的curl或py的scrapy;如果单机版玩家,拿到的数据就是自己推给自己的csv文件,也就有了数据分析的基础。

数据清洗:数据清洗这块是数据分析软件的强项,也是最难的地方之一;数据有不同维度,需要通过各种方式进行整合,判断;需要增添数据,或者去除异常值,或者从数据中提取少量进行分割

数据探索:数据探索是拿到这个数据最后想形成什么样预设结论,方法包括描述性统计、探索性画图找规律,做一些简单的假设检验等等,这块属于浅尝辄止:通过广撒网,确定几个深入研究的方向

最后就是数据挖掘,通过探索判定几个方向,后续可以利用各类建模的方式进行后续数据的预测和分析,或者继续探索数据异常的原因。

接下来就可以通过这些类比R和python了。

先说操作环境,R的Rstudio会对应python的pycharm,二者风格类似,可以无缝切换。

R一般会使用下面这两个函数进行包的安装和载入:

install.package('')
library()

由于我比较懒,一般都是到pycharm搜索包,然后直接安装,原生python可以用pip进行获取,然后载入包,比如pandas

from pandas import Series,DataFrame
import pandas as pd
import numpy as np

import函数=R的library,但是R有个缺点,很多包的函数相同的时候,会有一些函数被mask,也就是失效;而python这点算是个优点,比如:

import pandas as pd

以后很多pandas中的函数,都需要加上一个pd.xxx;除非在开头直接导入函数,比如导入了series和dataframe函数,可以不用前缀直接使用。

之前的R中的iris数据集我存到了csv文件中,需要读取,R中有

read.csv()

而python和这个类似:

import csv
iris=pd.read_csv('D:\\python study\\iris.csv')

read_csv函数前面就加了个pd前缀。

那么我们就导入了数据,但是查看数据的时候,我们不可能看数据的全集,太大了,需要看一下头几条,R中是

head(iris)

py中对应:

iris.head()

比如输入iris.head(),默认显示五条数据:

iris.head()
   Sepal.Length  Sepal.Width  Petal.Length  Petal.Width Species
0           5.1          3.5           1.4          0.2  setosa
1           4.9          3.0           1.4          0.2  setosa
2           4.7          3.2           1.3          0.2  setosa
3           4.6          3.1           1.5          0.2  setosa
4           5.0          3.6           1.4          0.2  setosa
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值