精华内容
下载资源
问答
  • 将CSV文件转为DataFrame,其中CSV包括无头文件和有文件。 二、数据展示 无头文件的CSV 1,张飞,21,北京,80 2,关羽,23,北京,82 3,赵云,20,上海,88 4,刘备,26,上海,83 5,曹操,30,深圳,90.8 有头文件的CSV id,name,...
  • 读取parquet列式存储格式文件创建DataFrame1、数据准备使用spark安装包下的 /opt/bigdata/spark/examples/src/main/resources/users.parquet文件2、读取数据val parquetDF=spark.read.parquet("file:///export/...

    读取parquet列式存储格式文件创建DataFrame

    1、数据准备

    使用spark安装包下的
    /opt/bigdata/spark/examples/src/main/resources/users.parquet文件

    2、读取数据

    val parquetDF=spark.read.parquet("file:///export/servers/spark/examples/src/main/resources/users.parquet")

    这里写图片描述

    3、使用DataFrame的函数操作

    parquetDF.show

    这里写图片描述

    parquetDF.printSchema

    这里写图片描述

    喜欢就点赞评论+关注吧

    这里写图片描述

    感谢阅读,希望能帮助到大家,谢谢大家的支持!

    展开全文
  • 读取json文件创建DataFrame1、数据准备使用spark安装包下的 /opt/bigdata/spark/examples/src/main/resources/people.json文件2、读取数据val jsonDF= spark.read.json("file:///export/servers/spark/examples/src...

    读取json文件创建DataFrame

    1、数据准备

    使用spark安装包下的
    /opt/bigdata/spark/examples/src/main/resources/people.json文件

    2、读取数据

    val jsonDF= spark.read.json("file:///export/servers/spark/examples/src/main/resources/people.json")

    这里写图片描述

    3、使用DataFrame的函数操作

    jsonDF.show

    这里写图片描述

    jsonDF.printSchema

    这里写图片描述

    喜欢就点赞评论+关注吧

    这里写图片描述

    感谢阅读,希望能帮助到大家,谢谢大家的支持!

    展开全文
  • 1,CSV object CreateDataFrameFromCSV { def main(args: Array[String]): Unit = { val spark: SparkSession = SparkSession.builder() .appName(this.getClass.... //获取数据的schema信息,每一行都有读取

    1,CSV

    object CreateDataFrameFromCSV {
    
      def main(args: Array[String]): Unit = {
    
        val spark: SparkSession = SparkSession.builder()
          .appName(this.getClass.getSimpleName)
          .master("local[*]")
          .getOrCreate()
    
        //获取数据的schema信息,每一行都有读取,将描述信息返回Driver端 
    
    //    val schema = new StructType()
    //      .add("name", DataTypes.StringType)
    //      .add("age", DataTypes.IntegerType)
    //      .add("fv", DataTypes.DoubleType)
    //
    //
    //    val df: DataFrame = spark
    //      .read
    //      .schema(schema)
    //      //.option("inferSchema", "true") //推断数据类型
    //      .csv("data/user.csv")
    //
    //    //val df2 = df.toDF("name", "age", "fv")
    
    
        val df = spark.read
            .option("header", true)   //读取头信息当做列
            .option("inferSchema", "true")
            .csv("data/user.csv")
    
        df.printSchema()
    
        df.write.csv("out/csv")
    
        spark.stop()
      }
    }

    2,JDBC

    import java.util.Properties
    
    import org.apache.spark.sql.{DataFrame, SaveMode, SparkSession}
    
    /**
     * 通过JDBC的方式创建DataFrame
     */
    object CreateDataFrameFromJDBC {
    
      def main(args: Array[String]): Unit = {
    
        val spark: SparkSession = SparkSession.builder()
          .appName(this.getClass.getSimpleName)
          .master("local[*]")
          .getOrCreate()
    
    
        val props = new Properties()
        props.setProperty("driver", "com.mysql.jdbc.Driver")
        props.setProperty("user", "root")
        props.setProperty("password", "123456")
    
        val url = "jdbc:mysql://localhost:3306/bigdata?characterEncoding=UTF-8"
    
        //因为数据库的表有schema,
        //Driver访问了数据库,获取到了表的Schema信息
        val df: DataFrame = spark.read.jdbc(url, "t_boy", props)
    
        df.printSchema()
    
        //df.show()
        //将数据写回到MySQL
        df.where("fv >= 100").write.mode(SaveMode.Append).jdbc(url, "t_person", props)
    
        //Thread.sleep(100000000)
    
      }
    }

    3,JSON

    object CreateDataFrameFromJSON {
    
      def main(args: Array[String]): Unit = {
    
        val spark: SparkSession = SparkSession.builder()
          .appName(this.getClass.getSimpleName)
          .master("local[*]")
          .getOrCreate()
    
        //获取数据的schema信息,每一行都有读取,将描述信息返回Driver端了
        //val df: DataFrame = spark.read.json("data/user.json")
    
        val df: DataFrame = spark.read.format("json").load("data/user.json")
    
        df.printSchema()
    
        import spark.implicits._
        //df.where($"_corrupt_record".isNull).show()
    
        val df2: DataFrame = df.filter(row => {
          row.getString(0) == null
        }).select("name", "age", "fv", "gender")
    
        //SaveMode.ErrorIfExists有目录就保存
        //SaveMode.Ignore有数据不写入其不报错
        //SaveMode.Overwrite将原来的数据删掉在写入
        //SaveMode.Append将新的数据追加
        //df2.write.mode(SaveMode.Append).json("out/boy")
        df2.write.mode(SaveMode.Append).format("json").save("out2/boy")
    
    
        spark.stop()
      }
    }

    4,Parquet

    object CreateDataFrameFromParquet {
    
      def main(args: Array[String]): Unit = {
    
        val spark: SparkSession = SparkSession.builder()
          .appName(this.getClass.getSimpleName)
          .master("local[*]")
          .getOrCreate()
    
        val df: DataFrame = spark.read.parquet("out/par")
    
        //df.printSchema()
    
        df.select("age").show()
    
        spark.stop()
      }
    }

    5,Orc

    object CreateDataFrameFromOrc {
    
      def main(args: Array[String]): Unit = {
    
        val spark: SparkSession = SparkSession.builder()
          .appName(this.getClass.getSimpleName)
          .master("local[*]")
          .getOrCreate()
    
        val df: DataFrame = spark.read.orc("out/orc")
    
        df.printSchema()
    
        df.select("age").show()
    
        spark.stop()
      }
    }
    

     

    展开全文
  • 读取文本文件创建DataFrame在spark2.0之后,SparkSession 封装了 SparkContext,SqlContext,通过SparkSession可以获取到SparkConetxt,SqlContext对象。1、创建本地文件并上传hdfs有三列,分别是id、name、age,用...

    读取文本文件创建DataFrame

    在spark2.0之后,SparkSession 封装了 SparkContext,SqlContext,通过SparkSession可以获取到SparkConetxt,SqlContext对象。

    1、创建本地文件并上传hdfs

    有三列,分别是id、name、age,用空格分隔

    vi person.txt
    
    1 zhangsan 20
    2 lisi 29
    3 wangwu 25
    4 zhaoliu 30
    5 tianqi 35
    6 kobe 40

    上传到hdfs

    hdfs dfs -put person.txt /

    2、读取数据并分割

    配置的默认读取hdfs
    启动shell

    spark-shell --master local[2]

    读取数据,将每一行的数据使用列分隔符分割先执行

    val lineRDD= sc.textFile("/person.txt").map(_.split(" "))

    3、定义样例类

    case class Person(id:Int, name:String, age:Int)

    这里写图片描述

    4、RDD和样例类关联

    val personRDD = lineRDD.map(x => Person(x(0).toInt, x(1), x(2).toInt))

    这里写图片描述

    5、RDD转换为DataFrame

    val personDF = personRDD.toDF

    这里写图片描述

    6、对DataFrame操作

    personDF.show

    这里写图片描述

    personDF.printSchema

    这里写图片描述

    7、通过SparkSession构建DataFrame

    使用spark-shell中已经初始化好的SparkSession对象spark生成DataFrame

    val dataFrame=spark.read.text("/person.txt")
    
    dataFrame.show

    这里写图片描述

    喜欢就点赞评论+关注吧

    这里写图片描述

    感谢阅读,希望能帮助到大家,谢谢大家的支持!

    展开全文
  • 3. 读取parquet列式存储格式文件创建DataFrame 准备数据文件 使用Spark自带的数据包 /export/servers/spark/example/src/mian/resources/users.parquet 在spark shell执行下面命令, 读取数据 这里使用...
  • 2. 读取Json文件创建DataFrame 数据文件 spark安装包自带不通格式的数据,我们去spark包里面找json文件 /export/servers/spark/example/src/main/resourcces/people.json 在spark shell执行下面命令,读取数据 ...
  • json文件中的json数据不能嵌套json格式数据DataFrame是一个一个Row类型的RDD,df.rdd()/df.javaRdd()。 可以两种方式读取json格式的文件。 df.show()默认显示前20行数据DataFrame原生API可以操作DataFrame...
  • Spark创建DataFrame和读取CSV数据文件

    万次阅读 2016-10-17 23:58:34
    之前写的程序中,有些API在Spark SQLContext没有,我计算的结果先保存在rdd中,最后在使用RDD转换成dataframe进行保存,话不多说下面是代码.//一个StruceFields你可以把它当成一个特征列。分别用列的名称和数据类型...
  • Spark创建DataFrame

    2020-09-24 09:31:17
    1. DataFrame 在Spark中可以通过RDD转换为DataFrame,也可以通过DataFrame转化...动态创建Schema构造当前的DataFrame结构 从parquet文件中读取 从MySQL中读取数据 从Hive中读取数据 2. 从json文件读取构造DataFrame p
  • 读取json格式的文件创建DataFrame 注意: json文件中的json数据不能嵌套json格式数据。 DataFrame是一个一个Row类型的RDD,df.rdd()/df.javaRdd()。 可以两种方式读取json格式的文件。 df.show()默认显示前20行...
  • (1)创建json的RDD文件,路径文件名不能以数据开头(\会作为转义字符,需要将路径中的\进行转义) ...(2)创建dataFrame Swimjson=spark.read.json(strjson) (3)创建临时表括号中的为表名 Swimjso...
  • 创建DataFrame在Spark SQL中,开发者可以非常便捷地将各种内、外部的单机、分布式数据转换为DataFrame。以下Python示例代码充分体现了Spark SQL 1.3.0中DataFrame数据源的丰富多样和简单易用: # 从Hive中的users...
  • XML是一个树状结构,而Pandas数据帧是一个二维表状结构。所以这两者之间没有自动转换的方法。您必须了解XML结构并知道如何将其数据映射到二维表。因此,每个XML到数据帧的问题都是不同的。...因此,创建一个包含N...
  • 使用逐行创建DataFrame,再用DataFrame.append合并, 使用DataFrame.loc[] = []的方式逐行插入数据。 为DataFrame插入数据是非常不建议的选择, 应该直接用list装入所有数据,最后一次性合成DataFrame。 (文件...
  • DataFrame创建

    2020-10-29 21:20:38
    DataFrame的创建1、 读取文本文件创建DataFrame2、 读取json文件创建DataFrame3、 读取parquet列式存储格式文件创建DataFrame 1、 读取文本文件创建DataFrame 在spark2.0版本之前,Spark SQL中SQLContext是创建...
  • 前提 spark2.X 中sparksql 的入口改为spark,不再在是sparkContext sparkcore 底层操作的的是RDD,sparksql 操作...创建dataFrame的几种方式 读json 文件:注意不能读取嵌套类型Json文件 val spark = SparkSessio...
  • 读取json格式的文件创建DataFrame 注意: json文件中的json数据不能嵌套json格式数据。 DataFrame是一个一个Row类型的RDD,df.rdd()/df.javaRdd()。 可以两种方式读取json格式的文件。 df.show()默认显示前...
  • 问题描述:我有一个XML文档文件文件的一部分如下所示: <?xml version="1.0" encoding="UTF-8"?> <List> <SubCategory> <ID>BO</ID> <Name>Bookcases</Name> </...
  • Pandas是Python的数据分析利器,DataFrame是Pandas进行数据分析的基本结构,可以把...创建Pandas数据帧的六种方法如下:创建空DataFrame手工创建DataFrame使用List创建DataFrame使用Dict创建DataFrme使用Excel文件创...
  • Pandas是Python的数据分析利器,DataFrame是Pandas进行数据分析的基本结构,可以把...创建Pandas数据帧的六种方法如下:创建空DataFrame手工创建DataFrame使用List创建DataFrame使用Dict创建DataFrme使用Excel文件创...
  • 原文链接:http://tecdat.cn/?p=16788​tecdat.cn问题重现 软件:R...文件的一部分如下所示:<?xml version="1.0" encoding="UTF-8"?><List><SubCategory><ID>BO</ID><Name>B...
  • 如何将数据从Pandas DataFrame写入HTML文件,今天番茄加速就来讲一下。 读取HTML 我们可以使用read_html()函数读取HTML文件的表。此函数将HTML文件的表作为Pandas DataFrames读取。它可以从文件或URL中读取。 从...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 563
精华内容 225
关键字:

数据文件创建dataframe