赞
踩
- """
- 1. 读取csv基本信息, 打印行列信息和量纲信息
- """
- import pandas as pd
-
- # 以逗号为分隔符, 指定第一行为表头
- df = pd.read_csv('高校信息.csv')
-
- # 打印行列信息
- print(df.info())
-
- # 打印数字类型的量纲统计信息
- print(df.describe())
- """
- 2. 读取 csv 数据信息, 返回 DataFrame 类型数据, 缩略式的展示
- """
- import pandas as pd
-
- # 以逗号为分隔符, 不指定表头, 则以数字作为表头打印
- df = pd.read_csv('高校信息.csv', sep=',', header=None)
-
- print(df)
- """
- 3. 读取 csv 数据信息, 显示所有行列
- """
- import pandas as pd
-
- # 以逗号为分隔符, 指定第一行为表头
- df = pd.read_csv('高校信息.csv', sep=',', header=0)
-
- print(type(df.to_string()))
- """
- 4. 读取前几行数据
- """
- import pandas as pd
-
- # 以逗号为分隔符, 指定第一行为表头
- df = pd.read_csv('高校信息.csv', sep=',', header=0)
-
- # 读取前10行数据
- print(df.head(10).to_string())
- """
- 5. 读取末尾几行数据
- """
- import pandas as pd
-
- # 以逗号为分隔符, 指定第一行为表头
- df = pd.read_csv('高校信息.csv', sep=',', header=0)
-
- # 读取前10行数据, 不填则默认为5行
- print(df.tail(10).to_string())
- """
- 6. 以指定列为列标签
- """
- import pandas as pd
-
- # 以逗号为分隔符, 指定第一行为表头, 指定 院校名称为 列标签
- df = pd.read_csv('高校信息.csv', sep=',', header=0, index_col='院校名称')
-
- # 读取前10行数据
- print(df.head(5))
-
- # 以逗号为分隔符, 指定第一行为表头, 指定 院校名称和院校类型 为列标签
- df = pd.read_csv('高校信息.csv', sep=',', header=0, index_col=['院校名称', '院校类型'])
-
- # 读取前10行数据
- print(df.head(5))
-
- """
- 7. 读取 csv 数据信息, 并指定类型, 可以防止出现将整形数字转为浮点型
- """
- import pandas as pd
-
- # 以指定列代替索引, 这样就可以不打印前面的索引数字了, 但是这时必须指定表头
- df = pd.read_csv('高校信息.csv', sep=',', header=0, index_col='序号', dtype=object)
-
- print(df.head(10))
- """
- 8. 读取 csv 数据信息, 并遍历数据
- """
- import pandas as pd
-
-
- # 以逗号为分隔符, 不指定表头, 则实际表头参与遍历, 指定后, 则不参与遍历
- # 这样打印会打印前面的索引, 对于没有id的csv表格, 这个很好用
- df = pd.read_csv('高校信息.csv', sep=',', header=None)
-
- for i in df.itertuples():
- print(list(i))
- """
- 9. 读取 csv 数据信息, 并遍历数据, 不打印索引
- """
- import pandas as pd
-
- # 以指定列代替索引, 这样就可以不打印前面的索引数字了, 但是这时必须指定表头
- df = pd.read_csv('高校信息.csv', sep=',', header=0, index_col='序号')
-
- for i in df.itertuples():
- print(list(i))
- """
- 10. 读取 csv 数据信息, 将指定列转为list
- """
- import pandas as pd
- import numpy as np
-
- # 以逗号为分隔符, 不指定表头, 则以数字作为表头打印
- df = pd.read_csv('高校信息.csv', sep=',', header=0)
-
- # print(np.array(df["院校名称"]).tolist())
-
- print(np.array(df[["院校名称", "办学类型"]]).tolist())
- """
- 11. 读取 csv 数据信息, 打印指定列
- """
- import pandas as pd
-
- # usecols 可以读取指定列, 但是如果指定了某一字段为列索引, 该列必须出现在 usecols 中
- df = pd.read_csv('高校信息.csv', sep=',', header=0, index_col='序号', usecols=[0, 1])
-
- for i in df.itertuples():
- print(list(i))
- """
- 12. 读取 csv 数据信息, 对指定列做统计
- """
- import pandas as pd
- import numpy as np
-
- # 以逗号为分隔符, 不指定表头, 则以数字作为表头打印
- df = pd.read_csv('高校信息.csv', sep=',', header=0)
-
- print(df.info())
- # print(np.array(df["院校名称"]).tolist())
-
- print(np.array(df[["院校名称", "办学类型"]]).tolist())
- """
- 1. 写入 csv 数据信息, 覆盖老数据
- """
- import pandas as pd
-
- df = pd.read_csv('高校信息.csv', sep=',', header=0, dtype=object)
-
- header = df.head(10)
-
- # index = None 参数为去掉列索引
- header.to_csv('test.csv', index=None)
- """
- 2. 写入 csv 数据信息, 追加形式写数据
- """
- import pandas as pd
-
- df = pd.read_csv('高校信息.csv', sep=',', header=0, dtype=object)
-
- header = df.head(10)
-
- # mode = "a" 以追加的形式写数据
- header.to_csv('test.csv', index=None, mode='a')
- """
- 3. 将 list 数据写入 csv, 每个list为每个列数据
- {
- "name": ["小红","小王","小张","小李"],
- "sex": ["女","男","男","女"],
- "age": [18,16,17,20]
- }
- """
- from pandas.core.frame import DataFrame
-
- name = ["小红", "小王", "小张", "小李"]
- sex = ["女", "男", "男", "女"]
- age = [18, 16, 17, 20]
- student = {"name": name, "sex": sex, "age": age}
-
- # 将 json 转为 pandas 中的 DataFrame 类型
- data = DataFrame(student)
-
- data.to_csv('test.csv', index=None)
- """
- 4. 将 list 数据写入 csv, 每个list为每行数据, 每个list的个数, 可以不相等
- """
- from pandas.core.frame import DataFrame
-
- student = [["姓名", "性别", "年龄"],
- ["小红", "女", 18],
- ["小王", "男", 16],
- ["小张", "男", 17],
- ["小李", "女"]]
-
- # 将 list 转为 pandas 中的 DataFrame 类型
- data = DataFrame(student)
-
- # index=None, header=None 表示不要列与行索引
- data.to_csv('test.csv', index=None, header=None)
-
- # index=None, header=0 表示指定第一行为表头
- data.to_csv('test.csv', index=None, header=0)
- """
- 按行读取csv
- """
- import csv
-
- # 当出现比较大的字段时
- csv.field_size_limit(500 * 1024 * 1024)
-
- csv_file = open("高校信息.csv", encoding='utf-8')
- csv_reader_lines = csv.reader(csv_file)
-
-
- for i in csv_reader_lines:
- print(i)
- import csv
-
- file_object = open("test.csv", 'w', newline='')
-
- writer = csv.writer(file_object)
-
- data_list = [["a", "b", "c"], ["d", "e", "f", "g"], ["h", "i", "j", "k", "l"]]
-
- for row in data_list:
- writer.writerow(row)
-
- file_object.close()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。