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)
    }

}
目录
相关文章
|
9月前
|
Go
Golang切片copy踩坑
Golang切片copy踩坑
65 0
|
Unix Go
Golang 语言的标准库 os 包怎么操作目录和文件?
Golang 语言的标准库 os 包怎么操作目录和文件?
55 0
|
存储 数据处理 索引
【100天精通python】Day27:文件与IO操作_CSV文件处理
【100天精通python】Day27:文件与IO操作_CSV文件处理
93 0
|
5月前
|
Go
Golang语言文件操作快速入门篇
这篇文章是关于Go语言文件操作快速入门的教程,涵盖了文件的读取、写入、复制操作以及使用标准库中的ioutil、bufio、os等包进行文件操作的详细案例。
88 4
Golang语言文件操作快速入门篇
|
4月前
|
存储 JSON 数据格式
Python 输入输出与文件处理: io、pickle、json、csv、os.path 模块详解
Python 输入输出与文件处理: io、pickle、json、csv、os.path 模块详解
60 0
|
6月前
|
JSON Go 数据格式
[golang]标准库-json
[golang]标准库-json
|
8月前
|
Go
golang解析excel、csv编码格式
golang解析excel、csv编码格式
83 4
|
8月前
|
Go 开发工具 git
GoLang 和 csv 常用操作
GoLang 和 csv 常用操作
43 1
|
存储 编译器 Python
python文件处理-CSV文件的读取、处理、写入
python文件处理-CSV文件的读取、处理、写入
549 0
python文件处理-CSV文件的读取、处理、写入
|
9月前
|
Go API 开发者
Golang深入浅出之-文件与目录操作:os与path/filepath包
【4月更文挑战第26天】Go语言标准库`os`和`path/filepath`提供文件读写、目录操作等功能。本文涵盖`os.Open`, `os.Create`, `os.Mkdir`, `filepath.Join`等API的使用,强调了文件关闭、路径处理、并发写入和权限问题的处理,并给出实战代码示例,帮助开发者高效、安全地操作文件与目录。注意使用`defer`关闭文件,`filepath`处理路径分隔符,以及通过同步机制解决并发写入冲突。
544 2