添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
#创建dataframe
from pyspark.sql.types import *
rdd = sc.parallelize([('Alice', 160),('Andy', 159),('Bob', 170),('Cindy', 165),('Rose', 160)])
schema = StructType([
    StructField("name", StringType(), True),
    StructField("height", IntegerType(), True)
df = spark.createDataFrame(rdd, schema)

结果如下:
这里写图片描述
2.如果想要查找出以”A”开头的同学姓名呢,这个时候可以用like来进行模糊匹配

df.filter(df.name.like("A%")).show()

结果如下:
这里写图片描述
3.如果想要查找出不以”A”开头的同学姓名呢,当然在上面的基础上加个否定就可以了

df.filter(~df.name.like("%A%")).show()

结果如下:
这里写图片描述
4.小提醒
在不同的语言中通配符的表示不一样,有的用”*”,有的用”%”
在hive中对like的否定不是用”~”,可以直接用not(A like B)

具体如何创建原始数据,请看上一篇博客(dataframe的8种创建方法) from pyspark .sql import SparkSession spark = SparkSession.builder.appName('increase delete change select').master('local').getOrCreate() df = spark.createDataFrame([ 匹配一个很简单,批量匹配如下 df_obj[df_obj['title'].str.contains(r'.*?n.*')] #使用正则表达式进行模糊匹配,*匹配0或无限次,?匹配0或1次 pyspark dataframe 模糊匹配有两种方式 2.spark  dataframe  api,  filter rlike 联合使用 df1=d... from pyspark .sql.functions import concat, concat_ws df = spark.createDataFrame([('abcd','123')], ['s',... a=cur.execute("select ip,info,env from machine_info where substring_index(ip,'.',-1) +0 >=%s and substring_index(ip,'.',-1) + 0 在Python %是一个格式化字符,所以如果需要使用%则需要写成%%。将在Python 执行的sql语句改为:sql = "SELECT * FROM table_test WHERE value LIKE '%%%%%s%%%%'" % test_value执行成功,print出SQL语句之后为:SELECT * FROM table_test WHERE value LIKE '%%publi... 最初于2019年4月26日发布在https://hackersandslackers.com。轻松的DataFrame清理技术,范围从删除有问题的行到选择重要的列。成为一名数据工程师会使事情变得无法清晰表达。 似乎不可避免的是,每个善意的Spark教程都注定会在没有太多解释的情况下陷入难以理解的代码墙。 这在StackOverflow 甚至显而易见,在这里,简单的问题经常会被荒谬的不必要的解决方案... SparkSQL是用于结构化数据处理的Spark模块。它提供了一种称为DataFrame的编程抽象,是由SchemaRDD发展而来。不同于SchemaRDD直接继承RDD,DataFrame自己实现了RDD的绝大多数功能。SparkSQL增加了DataFrame(即带有Schema信息的RDD),使用户可以在SparkSQL 执行SQL语句,数据既可以来自RDD,也可以是Hive、HDFS、Cassandra等外部数据源,还可以是JSON格式的数据。 PySpark 数据分析基础。... 18.Spark sql regexp_replace 及 rlike 用法 工作 遇到了一些字符串 偶然含有 \n (软回车) \r (软空格),在写入到hive后,建Kylin cube时有报错,说明在数据清洗时,没有考虑到这一点。要在数据清洗时,去除 \n (软回车) \r (软空格) # RDD的替换方法 s.replaceAll("[\\r\\n]", "") # ... 在查看dataFrame的信息时,可以通过collect()、show()、或者take()、来查看DataFrame 的数据(show()和take()包含了限制返回行数的选项) 1.查看行数 可以使用count()方法查看DataFrame的行数 from pyspark .sql import SparkSession spark= SparkSession\