首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PySpark:如何删除DataFrame中的非数字列?

在PySpark中,要删除DataFrame中的非数字列,可以使用drop方法结合filter函数来实现。

首先,使用filter函数筛选出非数字列。可以通过使用cast函数将列转换为数字类型,并使用isNaN函数判断是否为非数字。然后,使用select方法选择需要保留的列。

下面是一个示例代码:

代码语言:txt
复制
from pyspark.sql.functions import col, isnan

def drop_non_numeric_columns(df):
    numeric_columns = [column for column in df.columns if df.select(column).dtypes[0][1] in ['double', 'float', 'integer']]
    df = df.select(*numeric_columns)
    return df

# 使用示例
df = spark.createDataFrame([(1, 'a', 2.0), (3, 'b', 4.0)], ['col1', 'col2', 'col3'])
df = drop_non_numeric_columns(df)
df.show()

在上面的示例中,drop_non_numeric_columns函数接受一个DataFrame作为输入,并返回一个只包含数字列的新DataFrame。首先,通过遍历DataFrame的列,筛选出数据类型为doublefloatinteger的列。然后,使用select方法选择这些列,并返回新的DataFrame。

这样,非数字列就会被删除,只保留数字列。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

pysparkdataframe增加新实现示例

熟悉pandaspythoner 应该知道给dataframe增加一很容易,直接以字典形式指定就好了,pyspark中就不同了,摸索了一下,可以使用如下方式增加 from pyspark import...SparkContext from pyspark import SparkConf from pypsark.sql import SparkSession from pyspark.sql import...Jane”, 20, “gre…| 10| | Mary| 21| blue|[“Mary”, 21, “blue”]| 10| +—–+—+———+——————–+——-+ 2、简单根据某进行计算...比如我想对某做指定操作,但是对应函数没得咋办,造,自己造~ frame4 = frame.withColumn("detail_length", functions.UserDefinedFunction...给dataframe增加新实现示例文章就介绍到这了,更多相关pyspark dataframe增加内容请搜索ZaLou.Cn以前文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn

3.2K10

如何在 Pandas DataFrame 插入一

然而,对于新手来说,在DataFrame插入一可能是一个令人困惑问题。在本文中,我们将分享如何解决这个问题方法,并帮助读者更好地利用Pandas进行数据处理。...为什么要解决在Pandas DataFrame插入一问题? Pandas DataFrame是一种二维表格数据结构,由行和组成,类似于Excel表格。...解决在DataFrame插入一问题是学习和使用Pandas必要步骤,也是提高数据处理和分析能力关键所在。 在 Pandas DataFrame 插入一个新。...示例 1:插入新列作为第一 以下代码显示了如何插入一个新列作为现有 DataFrame 第一: import pandas as pd #create DataFrame df = pd.DataFrame...总结: 在Pandas DataFrame插入一是数据处理和分析重要操作之一。通过本文介绍,我们学会了使用Pandas库在DataFrame插入新

39710

删除 NULL 值

图 2 输出结果 先来分析图 1 是怎么变成图 2,图1 tag1、tag2、tag3 三个字段都存在 NULL 值,且NULL值无处不在,而图2 里面的NULL只出现在这几个字段末尾。...这个就类似于 Excel 里面的操作,把 NULL 所在单元格删了,下方单元格往上移,如果下方单元格值仍是 NULL,则继续往下找,直到找到了 NULL 值来补全这个单元格内容。...有一个思路:把每一去掉 NULL 后单独拎出来作为一张独立表,这个表只有两个字段,一个是序号,另一个是去 NULL 后值。...一个比较灵活做法是对原表数据做转行,最后再通过行转列实现图2 输出。具体实现看下面的 SQL(我偷懒了,直接把原数据通过 SELECT 子句生成了)。...,按值在原表列出现顺序设置了序号,目的是维持同一相对顺序不变。

9.7K30

Pyspark处理数据带有分隔符数据集

本篇文章目标是处理在数据集中存在分隔符或分隔符特殊场景。对于Pyspark开发人员来说,处理这种类型数据集有时是一件令人头疼事情,但无论如何都必须处理它。...让我们看看如何进行下一步: 步骤1。...从文件读取数据并将数据放入内存后我们发现,最后一数据在哪里,年龄必须有一个整数数据类型,但是我们看到了一些其他东西。这不是我们所期望。一团糟,完全不匹配,不是吗?...答案是肯定,确实一团糟。 现在,让我们来学习如何解决这个问题。 步骤2。...我们已经成功地将“|”分隔(“name”)数据分成两。现在,数据更加干净,可以轻松地使用。

4K30

独家 | PySpark和SparkSQL基础:如何利用Python编程执行Spark(附代码)

作者:Pinar Ersoy 翻译:孙韬淳 校对:陈振东 本文约2500字,建议阅读10分钟 本文通过介绍Apache Spark在Python应用来讲解如何利用PySpark包执行常用函数来进行数据处理工作...通过名为PySparkSpark Python API,Python实现了处理结构化数据Spark编程模型。 这篇文章目标是展示如何通过PySpark运行Spark并执行常用函数。...5) 分别显示子字符串为(1,3),(3,6),(1,6)结果 6、增加,修改和删除DataFrame API同样有数据处理函数。...接下来,你可以找到增加/修改/删除操作例子。...', 'URL') dataframe.show(5) “Amazon_Product_URL”列名修改为“URL” 6.3、删除 删除可通过两种方式实现:在drop()函数添加一个组列名,或在

13.3K21

PySparkDataFrame操作指南:增删改查合并统计与数据处理

笔者最近需要使用pyspark进行数据整理,于是乎给自己整理一份使用指南。pyspark.dataframe跟pandas差别还是挺大。...(参考:王强知乎回复) pythonlist不能直接添加到dataframe,需要先将list转为新dataframe,然后新dataframe和老dataframe进行join操作,...(isnan("a")) # 把a里面数据为nan筛选出来(Not a Number,数字数据) ---- 3、-------- 合并 join / union -------- 3.1 横向拼接...返回当前DataFrame不重复Row记录。...; Pyspark DataFrame数据反映比较缓慢,没有Pandas那么及时反映; Pyspark DataFrame数据框是不可变,不能任意添加,只能通过合并进行; pandas比Pyspark

29.9K10

手把手实现PySpark机器学习项目-回归算法

摘要 PySpark作为工业界常用于处理大数据以及分布式计算工具,特别是在算法建模时起到了非常大作用。PySpark如何建模呢?...在这篇文章,笔者在真实数据集中手把手实现如何预测用户在不同品类各个产品购买行为。 如果有兴趣和笔者一步步实现项目,可以先根据上一篇文章介绍安装PySpark,并在网站中下载数据。...预览数据集 在PySpark,我们使用head()方法预览数据集以查看Dataframe前n行,就像pythonpandas一样。我们需要在head方法中提供一个参数(行数)。...分析数值特征 我们还可以使用describe()方法查看Dataframe各种汇总统计信息,它显示了数字变量统计信息。要显示结果,我们需要调用show()方法。...train" Dataframe成功添加了一个转化后“product_id_trans”,("Train1" Dataframe)。

8.5K70

手把手教你实现PySpark机器学习项目——回归算法

PySpark如何建模呢?这篇文章手把手带你入门PySpark,提前感受工业界建模过程! 任务简介 在电商,了解用户在不同品类各个产品购买力是非常重要!...分析数据类型 要查看Dataframe类型,可以使用printSchema()方法。让我们在train上应用printSchema(),它将以树格式打印模式。...预览数据集 在PySpark,我们使用head()方法预览数据集以查看Dataframe前n行,就像pythonpandas一样。我们需要在head方法中提供一个参数(行数)。...分析数值特征 我们还可以使用describe()方法查看Dataframe各种汇总统计信息,它显示了数字变量统计信息。要显示结果,我们需要调用show()方法。...train" Dataframe成功添加了一个转化后“product_id_trans”,("Train1" Dataframe)。

4K10

PySpark入门】手把手实现PySpark机器学习项目-回归算法

摘要 PySpark作为工业界常用于处理大数据以及分布式计算工具,特别是在算法建模时起到了非常大作用。PySpark如何建模呢?...在这篇文章,笔者在真实数据集中手把手实现如何预测用户在不同品类各个产品购买行为。 如果有兴趣和笔者一步步实现项目,可以先根据上一篇文章介绍安装PySpark,并在网站中下载数据。...预览数据集 在PySpark,我们使用head()方法预览数据集以查看Dataframe前n行,就像pythonpandas一样。我们需要在head方法中提供一个参数(行数)。...分析数值特征 我们还可以使用describe()方法查看Dataframe各种汇总统计信息,它显示了数字变量统计信息。要显示结果,我们需要调用show()方法。...train" Dataframe成功添加了一个转化后“product_id_trans”,("Train1" Dataframe)。

8.1K51

PySpark入门】手把手实现PySpark机器学习项目-回归算法

PySpark作为工业界常用于处理大数据以及分布式计算工具,特别是在算法建模时起到了非常大作用。PySpark如何建模呢?这篇文章手把手带你入门PySpark,提前感受工业界建模过程!...在这篇文章,笔者在真实数据集中手把手实现如何预测用户在不同品类各个产品购买行为。 如果有兴趣和笔者一步步实现项目,可以先根据上一篇文章介绍安装PySpark,并在网站中下载数据。...预览数据集 在PySpark,我们使用head()方法预览数据集以查看Dataframe前n行,就像pythonpandas一样。我们需要在head方法中提供一个参数(行数)。...分析数值特征 我们还可以使用describe()方法查看Dataframe各种汇总统计信息,它显示了数字变量统计信息。要显示结果,我们需要调用show()方法。...train" Dataframe成功添加了一个转化后“product_id_trans”,("Train1" Dataframe)。

6.4K20

Excel公式练习38: 求一数字剔除掉另一数字后剩下数字

本次练习是:如下图1所示,在单元格区域A2:A12和B2:B12给定两数字,要在C从单元格C2开始生成一数字。规则如下: 1. B数字数量要小于等于A数字数量。 2....B任意数字都可以在A中找到。 3. 在A或B已存放数字单元格之间不能有任何空单元格。 4. 在C数字是从A数字移除B数字A第一次出现数字后剩下数字。 5....换句话说,B和C数字合起来就是A数字。 ? 图1 在单元格D1数字等于A数字数量减去B数字数量后值,也就是C数字数量。...现在,要在单元格C2编写一个公式,然后下拉至单元格C12,得到如上图1所示结果。 那么,如何编写这个公式呢? 先不看答案,自已动手试一试。...使用下面的公式确定C要返回数字数量: =COUNT(List1)-COUNT(List2) 1.

3.2K20

PySpark入门】手把手实现PySpark机器学习项目-回归算法

摘要 PySpark作为工业界常用于处理大数据以及分布式计算工具,特别是在算法建模时起到了非常大作用。PySpark如何建模呢?...在这篇文章,笔者在真实数据集中手把手实现如何预测用户在不同品类各个产品购买行为。 如果有兴趣和笔者一步步实现项目,可以先根据上一篇文章介绍安装PySpark,并在网站中下载数据。...预览数据集 在PySpark,我们使用head()方法预览数据集以查看Dataframe前n行,就像pythonpandas一样。我们需要在head方法中提供一个参数(行数)。...分析数值特征 我们还可以使用describe()方法查看Dataframe各种汇总统计信息,它显示了数字变量统计信息。要显示结果,我们需要调用show()方法。...train" Dataframe成功添加了一个转化后“product_id_trans”,("Train1" Dataframe)。

2.1K20

PySpark SQL——SQL和pd.DataFrame结合体

导读 昨日推文PySpark环境搭建和简介,今天开始介绍PySpark第一个重要组件SQL/DataFrame,实际上从名字便可看出这是关系型数据库SQL和pandas.DataFrame结合体,...Column:DataFrame每一数据抽象 types:定义了DataFrame数据类型,基本与SQL数据类型同步,一般用于DataFrame数据创建时指定表结构schema functions...以上主要是类比SQL关键字用法介绍了DataFrame部分主要操作,而学习DataFrame另一个主要参照物就是pandas.DataFrame,例如以下操作: dropna:删除空值行 实际上也可以接收指定列名或阈值...:删除指定 最后,再介绍DataFrame几个通用常规方法: withColumn:在创建新或修改已有时较为常用,接收两个参数,其中第一个参数为函数执行后列名(若当前已有则执行修改,否则创建新...05 总结 本文较为系统全面的介绍了PySparkSQL组件以及其核心数据抽象DataFrame,总体而言:该组件是PySpark一个重要且常用子模块,功能丰富,既继承了Spark core

9.9K20

Spark Extracting,transforming,selecting features

,不过这个对应关系是字符串频率越高,对应数字越小,因此出现最多将被映射为0,对于未见过字符串标签,如果用户选择保留,那么它们将会被放入数字标签,如果输入标签是数值型,会被强转为字符串再处理; 假设我们有下面这个包含...: 抛出异常,默认选择是这个; 跳过包含未见过label行; 将未见过标签放入特别的额外,在索引数字标签; 回到前面的例子,不同是将上述构建StringIndexer实例用于下面的DataFrame...,类似R公式用于线性回归一样,字符串输入列会被one-hot编码,数值型会被强转为双精度浮点,如果标签是字符串,那么会首先被StringIndexer转为double,如果DataFrame不存在标签...,输出标签会被公式指定返回变量所创建; 假设我们有一个包含id、country、hour、clickedDataFrame,如下: id country hour clicked 7 "US"...(10, Array[(2,1.0),(3,1.0),(5,1.0)])表示空间中有10个元素,集合包括元素2,3,5,所有零值被看作二分值”1“; from pyspark.ml.feature

21.8K41

pythonpandas库DataFrame对行和操作使用方法示例

'w',使用类字典属性,返回是Series类型 data.w #选择表格'w',使用点属性,返回是Series类型 data[['w']] #选择表格'w',返回DataFrame...(1) #返回DataFrame第一行 最近处理数据时发现当pd.read_csv()数据时有时候会有读取到未命名,且该也用不到,一般是索引被换掉后导致,有强迫症看着难受,这时候dataframe.drop...([columns])来删除了,当然不用我这样全部给列名替换掉了,可以只是改变未命名那个,然后删除。...不过这个用起来总是觉得有点low,有没有更好方法呢,有,可以不去删除,直接: data7 = data6.ix[:,1:]1 这样既不改变原有数据,也达到了删除神烦,当然我这里时第0删除,可以根据实际选择所在删除之...github地址 到此这篇关于pythonpandas库DataFrame对行和操作使用方法示例文章就介绍到这了,更多相关pandas库DataFrame行列操作内容请搜索ZaLou.Cn以前文章或继续浏览下面的相关文章希望大家以后多多支持

13.3K30
领券