pandas数据集的端到端处理

Genet ·
更新时间:2024-11-15
· 950 次阅读

1. 数据集基本信息

df = pd.read_csv()

df.head():前五行;

df.info():

rangeindex:行索引; data columns:列索引; dtypes:各个列的类型, 主体部分是各个列值的情况,比如可判断是否存在 NaN 值;

对于非数值型的属性列

df[‘some_categorical_columns'].value_counts():取值分布;

df.describe(): 各个列的基本统计信息

count mean std min/max 25%, 50%, 75%:分位数

df.hist(bins=50, figsize=(20, 15)):统计直方图;

对 df 的每一列进行展示:

train_prices = pd.DataFrame({'price': train_df.SalePrice, 'log(price+1)': np.log1p(train_df.SalePrice)}) # train_prices 共两列,一列列名为 price,一列列名为 log(price+1) train_prices.hist()

2. 数据集拆分

def split_train_test(data, test_ratio=.3): shuffled_indices = np.random.permutation(len(data)) test_size = int(len(data)*test_ratio) test_indices = shuffled_indices[:test_size] train_indices = shuffled_indices[test_size:] return data.iloc[train_indices], data.iloc[test_indices]

3. 数据预处理

一键把 categorical 型特征(字符串类型)转化为数值型: >> df['label'] = pd.Categorical(df['label']).codes 一键把 categorical 型特征(字符串类型)转化为 one-hot 编码: >> df = pd.get_dummies(df) null 值统计与填充: >> df.isnull().sum().sort_values(ascending=False).head() # 填充为 mean 值 >> mean_cols = df.mean() >> df = df.fillna(mean_cols) >> df.isnull().sum().sum() 0

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对软件开发网的支持。如果你想了解更多相关内容请查看下面相关链接

您可能感兴趣的文章:python:pandas合并csv文件的方法(图书数据集成)Python字符串逆序的实现方法【一题多解】Python实现去除列表中重复元素的方法总结【7种方法】Python字符串逆序输出的实例讲解强悍的Python读取大文件的解决方案Python基础之文件读取的讲解Python标准库使用OrderedDict类的实例讲解Python从文件中读取数据的方法讲解centos6.5安装python3.7.1之后无法使用pip的解决方案使用Python自动化破解自定义字体混淆信息的方法实例



端到端 pandas

需要 登录 后方可回复, 如果你还没有账号请 注册新账号