美文网首页我爱编程
pandas学习笔记

pandas学习笔记

作者: AfterlifeYeah | 来源:发表于2018-04-18 11:46 被阅读0次

pandas 读取 csv 文件

import pandas as pd
test_df = pd.read_csv("./test.csv")  # 将文件csv文件全部读取
test_df = pd.read_csv(names=['a_from_lng','a_from_lat','b_from_lng','b_from_lat',],skiprows=10)  # 读取这四列数据,并跳过前面10行

查看pandas的列名以及列数

test_df.columns  # 列名
test_df.columns.size  # 列数
test_df.shape[1]  # 列数

pandas 查看某一列的全部数据或部分数据

test_df['a_from_lng']  # 查看该列全部数据
test_df['a_from_lng'].head()  # 查看该列前面10条数据
test_df['a_from_lng'].head(100)  # 查看该列前面100条数据
test_df['a_from_lng'].tail()  # 查看该列最后10条数据
test_df['a_from_lng'].tail(100)  # 该看该列最后100条数据

查看所有列或者制定列的统计信息

test_df.describe()  # 所有列
test_df['a_from_lng'].describe()  # 指定列

利用前面几列的信息生成新的列

def distance(x1, y1, x2, y2):
    return np.sqrt((x1-x2)**2+(y1-y2)**2)
test_df['start_distance_gap'] = map(lambda x1, y1, x2, y2: distance(x1, y1, x2, y2), \
    test_df['a_from_lng'], test_df['a_from_lat'], test_df['b_from_lng'], test_df['b_from_lat'])

pandas 处理时间特征

# 增加小时和分钟特征
a_setup_time = pd.DatetimeIndex(test_df['a_setup_time'])
test_df["a_setup_hour"] = pd.Index(a_setup_time).hour
test_df["a_setup_minute"] = pd.Index(a_setup_time).minute

pandas 删除无用特征,删除列

test_df.drop('b_time', axis=1, inplace=True)

pandas 将csv文件保存到本地

test_df.to_csv('./feature.csv')
# 将特征文件保存,只保存第0,1,2,3列,并且不保存header(列名)
test_df.to_csv('./feature.csv', columns=[0, 1, 2, 3], header=False)  

pandas将一个list加入到df中

useful_order_count = [balabala...]
test_df["useful"] = pd.Series(useful_order_count)  # 在dataframe中增加新列useful,这个数据之前是一个list

DataFrame 转换成 array 或 list

test_np = np.array(test_df)  # np.ndarray()
test_list = test_np.tolist()  # list

Series有多少不重复数据,重复数据有多少

test_df['id'].value_counts()

输出结果是每个值都对应了多少数量

查看某一列有多少不重复的数据

tmp =  test_df.drop_duplicates(subset=['poi'])
print len(tmp)

查看DataFrame中有缺失值的列

na_count = test_df.isnull().sum().sort_values(ascending=False) # 找出test_df中有缺失值的列,并按照缺失的数量按照降序打印出来
na_count = na_count[na_count>0]  # 只查看缺失的
na_rate = na_count / len(test_df)
na_data = pd.concat([na_count,na_rate],axis=1,keys=['count','ratio']) 

pandas 获得行名

test_df.index

pandas 显示所有列的信息

pd.options.display.max_columns = None

将str转换成时间

total_data_useful['Timestamp'] = pd.to_datetime(total_data_useful['Timestamp'])

dataframe 拼接

total_data = pd.concat([data1, data2, data3, data4, data5, data6])  # 按列拼接
total_data = pd.concat([data1, data2, data3, data4, data5, data6], axis=1) # 按行拼接

查看缺失数据

total= data_df.isnull().sum().sort_values(ascending=False)
percent = (data_df.isnull().sum()/data_df.isnull().count()).sort_values(ascending=False)
missing_data = pd.concat([total, percent], axis=1, keys=['Total','Percent'])
missing_data

对某一列进行归一化

col_name = 'Total_Flow'
tmp = (data_df[col_name] - data_df[col_name].mean()) / data_df[col_name].std()
data_df = data_df.drop([col_name], axis=1)
data_df[col_name] = tmp

设置精度

data.to_csv('out.csv',index = False, float_format = '%.4f')

相关文章

  • 大师兄的Python机器学习笔记:Pandas库

    大师兄的Python机器学习笔记:实现评估模型 一、关于Pandas 1. Pandas和Numpy Pandas...

  • pandas索引取数

    注:《利用python进行数据分析》的学习笔记-pandas import pandas as pd import...

  • pandas-基础笔记

    Pandas学习笔记-基础篇 参考资料 https://www.yiibai.com/pandas/ 导入模块 S...

  • 学习笔记----机器学习(三)

    我是iOS开发者之一。我们的App:今日好出行 申明一下,只是学习笔记,只是学习笔记,只是学习笔记。 Pandas...

  • pandas学习笔记

    pandas学习笔记 1.安装 2.学习代码-Series code 1 0 1001 py...

  • pandas学习笔记

    Pandas库的介绍 Pandas是一个开放源码的Python库,它使用强大的数据结构提供高性能的数据操作和分析工...

  • pandas学习笔记

    pandas 读取 csv 文件 查看pandas的列名以及列数 pandas 查看某一列的全部数据或部分数据 查...

  • pandas学习笔记

    筛选数据 读取文件 import pandas as pdpd.read_csv("Lung.txt",heade...

  • pandas 学习笔记

    pd.Series 简介: Series 是一个定长的有序字典 简单创建: Series 中可以包含多种基本数据类...

  • pandas学习笔记

    最近在学python,正好看到一个讲解pandas的系列视频,正好做一下笔记,笔记会参考视频,同时也会参考pand...

网友评论

    本文标题:pandas学习笔记

    本文链接:https://www.haomeiwen.com/subject/xzlvkftx.html