2025-11-14 学习记录--Python-使用sklearn+检测 .csv 文件的编码+读取 .csv 文件

一、使用sklearn ⭐️

要使用 sklearn(Scikit-Learn) ,你需要先 安装 scikit-learn 库。

1、pip安装

bash 复制代码
pip install scikit-learn

如果希望升级,则:

bash 复制代码
pip install --upgrade scikit-learn

2、Anaconda安装

bash 复制代码
conda install scikit-learn

或使用 conda-forge

bash 复制代码
conda install -c conda-forge scikit-learn

3、若pipPython3 对应的 pip3

bash 复制代码
pip3 install scikit-learn

二、检测 .csv 文件的编码 ⭐️

  • 如果不检测编码直接读:👇🏻
    • 乱码 🧵
    • 列名可能变成奇怪字符 👹
    • 数值可能读不出来 🍉
  • 因此第一步必须判断编码,然后正确读取。😊

常见编码包括:🦋

  • UTF-8(最普遍)❀
  • Big5(台湾繁体中文常用)❀
  • CP950(Windows Big5)❀
  • GBK / GB2312(简体中文常用)❀
python 复制代码
import chardet
# 导入 chardet 库,用于自动检测文件编码格式

with open("train.csv", "rb") as f:
    raw_data = f.read(200000)         # 以二进制方式读取文件,读取前 200KB 数据用于判断编码(越多越准确)
    result = chardet.detect(raw_data) # 使用 chardet.detect() 自动推断编码类型和置信度

print(result)                         # 打印检测出的编码结果(包含编码名、置信度等)

输出示例: 👇🏻

python 复制代码
{'encoding': 'utf-8', 'confidence': 0.99, 'language': ''}

三、读取 .csv 文件 ⭐️

最常用的方法就是使用 pandasread_csv()

python 复制代码
import pandas as pd # 导入 pandas 库,用于读取 CSV、数据分析等操作

# 从当前目录读取 data.csv 文件,并将其内容存入 DataFrame(df)对象
# 🍍encoding="前面 检测 .csv 文件的编码"
df = pd.read_csv("data.csv", encoding="utf-8")

# 打印数据的前 5 行,用于快速查看数据结构和内容
print(df.head())

# 打印 DataFrame 中所有列名,方便了解表的结构
print(df.columns) # 输出示例:Index(['age', 'height', 'weight', 'gender'], dtype='object')
# 打印 列名列表(list 格式)[或者 🍍df.columns.tolist()]
print(list(df.columns)) # 输出示例:['age', 'height', 'weight', 'gender']
# 遍历列名
for col in df.columns:
    print(col)

# 统计每一列的缺失值(NaN)数量,用于检查数据质量
print(df.isna().sum())
相关推荐
d111111111d2 分钟前
STM32如何通过寄存器直接禁止EXTI0中断
笔记·stm32·单片机·嵌入式硬件·学习
vibag2 分钟前
Prompt提示词工程
python·语言模型·大模型·prompt
KevinGuo4573 分钟前
Selenium3自动化测试实战——基于python语言
开发语言·python·selenium
梦茹^_^11 分钟前
Flsk框架(自学)2
后端·python·flask·web框架
NullPointer835 分钟前
【剪映小助手源码精讲】第39章:CI流程
python·aigc
七夜zippoe37 分钟前
Python并发与并行编程深度剖析:从GIL原理到高并发实战
服务器·网络·python·并发·gil
weixin_4573402142 分钟前
lora监督微调(SFT)
开发语言·python
weixin_390308461 小时前
Jenkins报Host key verification failed错误
python·jenkins
YJlio1 小时前
PsPing 学习笔记(14.4):TCP/UDP 延迟测试——从单包 RTT 到抖动分析
笔记·学习·tcp/ip
码农三叔1 小时前
(4-2-05)Python SDK仓库:MCP服务器端(5)Streamable HTTP传输+Streamable HTTP传输
开发语言·python·http·大模型·1024程序员节·mcp·mcp sdk