Golang-CSV文件处理

简介: Go语言CSV文件处理

主要使用 encoding/csv 来解析 csv 文件。同时简单使用dataframe包更快速地操作CSV文件。

package main

import (
    "fmt"
    "log"
    "os"

    "github.com/kniren/gota/dataframe"
)

func main() {
   
    // 打开CSV文件
    irisData, err := os.Open("D:/Code/Datasets/iris.csv")
    if err != nil {
   
        log.Fatal(err)
    }
    // 关闭文件
    defer irisData.Close()

    // 创建一个dataframe
    irisDF := dataframe.ReadCSV(irisData)

    // 展示数据
    fmt.Println(irisDF)

    // 创建一个filter,少选Iris-cersicolor类型的花
    filter := dataframe.F{
   
        Colname:    "species",
        Comparator: "==",
        Comparando: "Iris-versicolor",
    }
    versicolorDF1 := irisDF.Filter(filter)
    if versicolorDF1.Err != nil {
   
        log.Fatal(versicolorDF1.Err)
    }

    // 只选择"speal_width"列
    versicolorDF2 := irisDF.Filter(filter).Select([]string{
   "sepal_width", "species"})
    if versicolorDF2.Err != nil {
   
        log.Fatal(versicolorDF2.Err)
    }

    // 只展示前三条数据
    versicolorDF3 := irisDF.Filter(filter).Select([]string{
   "spetal_width", "species"}).Subset([]int{
   1, 2, 3})
    if versicolorDF3.Err != nil {
   
        log.Fatal(versicolorDF3.Err)
    }

}
目录
相关文章
|
7月前
|
Unix Go
Golang 语言的标准库 os 包怎么操作目录和文件?
Golang 语言的标准库 os 包怎么操作目录和文件?
28 0
|
7月前
|
存储 数据处理 索引
【100天精通python】Day27:文件与IO操作_CSV文件处理
【100天精通python】Day27:文件与IO操作_CSV文件处理
32 0
|
13天前
|
Go API 开发者
Golang深入浅出之-文件与目录操作:os与path/filepath包
【4月更文挑战第26天】Go语言标准库`os`和`path/filepath`提供文件读写、目录操作等功能。本文涵盖`os.Open`, `os.Create`, `os.Mkdir`, `filepath.Join`等API的使用,强调了文件关闭、路径处理、并发写入和权限问题的处理,并给出实战代码示例,帮助开发者高效、安全地操作文件与目录。注意使用`defer`关闭文件,`filepath`处理路径分隔符,以及通过同步机制解决并发写入冲突。
26 2
|
8月前
|
存储 编译器 Python
python文件处理-CSV文件的读取、处理、写入
python文件处理-CSV文件的读取、处理、写入
201 0
python文件处理-CSV文件的读取、处理、写入
|
7月前
|
XML 存储 JSON
【100天精通python】Day28:文件与IO操作_JSON文件处理
【100天精通python】Day28:文件与IO操作_JSON文件处理
59 0
|
10月前
|
缓存 Go 微服务
golang获取命令行参数和文件操作
golang获取命令行参数和文件操作
|
10月前
|
Python
Python对txt、csv文件读写数据
Python对txt、csv文件读写数据
59 0
|
12月前
|
存储 缓存 Go
Golang中文件目录操作的实现
Golang中文件目录操作的实现
77 0
Golang:Excelize读写excel文件的Go语言库
Golang:Excelize读写excel文件的Go语言库
314 0
Golang:Excelize读写excel文件的Go语言库
|
XML 存储 JSON
Python csv、xlsx、json、二进制(MP3) 文件读写基本使用
“流”是一种抽象的概念,也是一种比喻,水流是从—端流向另一端的,而在python中的“水流"就是数据,数据会从一端"流向”另一端,根据流的方向性,我们可以将流分为输入流和输出流,当程序需要从数据源中读入数据的时候就会开启一个输入流,相反,写出数据也会开启一个输出流,需要写入的数据源可以是文件、内存或者网络等。
183 0
Python csv、xlsx、json、二进制(MP3) 文件读写基本使用