DataFrame 类型类似于数据库表结构的数据结构,其含有行索引和列索引,可以将DataFrame 想成是由相同索引的Series组成的Dict类型。在其底层是通过二维以及一维的数据块实现.

1,DataFrame 对象的构建

import pandas as pd
#声明数据框架对象
list = {'男生':['王超','德芙','家福'],'女生':['阿尼','阿玉','阿东']}
gendered = pd.DataFrame(list)
print(gendered)
#自动生成索引
结果:
男生 女生
0 王超 阿尼
1 德芙 阿玉
2 家福 阿东
2指定列的顺序
gendered1 = pd.DataFrame(list,columns=['女生','男生'])
print(gendered1)
结果:
女生 男生
0 阿尼 王超
1 阿玉 德芙
2 阿东 家福
3指定索引
gendered2 = pd.DataFrame(list,[7,8,9])
print(gendered2) 结果:
男生 女生
7 王超 阿尼
8 德芙 阿玉
9 家福 阿东

一些常用属性

list = {'男生':['王超','德芙','家福'],'女生':['阿尼','阿玉','阿东']}
df = pd.DataFrame(list) print(df.size)
print(df.shape)
#打印头部一条
print(df.head(1))
# 打印尾部一条
print(df.tail(1))
# 打印所有列
print(df.columns)
# 打印数据
print(df.info()) 结果:
6 (3, 2) 男生 女生
0 王超 阿尼 男生 女生
2 家福 阿东 Index(['男生', '女生'], dtype='object') <class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 2 columns):
男生 3 non-null object
女生 3 non-null object
dtypes: object(2)
memory usage: 128.0+ bytes

实例 应用:

#使用科学计算来统计AVG年龄
df = pd.DataFrame({'gender':['男','女'],'age':[18,20]})
#分组运算
grouped = df['age'].groupby(df['gender'])
#平均年龄
avg_age = grouped.mean()
#可以根据键取值
print(avg_age) 结果:
gender
女 20
男 18
Name: age, dtype: int64

pandas之DataFrame的更多相关文章

  1. python 数据处理学习pandas之DataFrame

    请原谅没有一次写完,本文是自己学习过程中的记录,完善pandas的学习知识,对于现有网上资料的缺少和利用python进行数据分析这本书部分知识的过时,只好以记录的形势来写这篇文章.最如果后续工作定下来 ...

  2. Pandas之Dataframe叠加,排序,统计,重新设置索引

    Pandas之Dataframe索引,排序,统计,重新设置索引 一:叠加 import pandas as pd a_list = [df1,df2,df3] add_data = pd.concat ...

  3. pandas中DataFrame对象to_csv()方法中的encoding参数

    当使用pd.read_csv()方法读取csv格式文件的时候,常常会因为csv文件中带有中文字符而产生字符编码错误,造成读取文件错误,在这个时候,我们可以尝试将pd.read_csv()函数的enco ...

  4. pandas(DataFrame)

    DataFrame是二维数据结构,即数据以行和列的表格方式排列!特点:潜在的列是不同的类型,大小可变,标记行和列,可以对列和行执行算数运算. 其中Name,Age即为对应的Columns,序号0,1, ...

  5. Python3 Pandas的DataFrame数据的增、删、改、查

    Python3 Pandas的DataFrame数据的增.删.改.查 一.DataFrame数据准备 增.删.改.查的方法有很多很多种,这里只展示出常用的几种. 参数inplace默认为False,只 ...

  6. Python3 Pandas的DataFrame格式数据写入excle文件、json、html、剪贴板、数据库

    Python3 Pandas的DataFrame格式数据写入excle文件.json.html.剪贴板.数据库 一.DataFrame格式数据 Pandas是Python下一个开源数据分析的库,它提供 ...

  7. python. pandas(series,dataframe,index) method test

    python. pandas(series,dataframe,index,reindex,csv file read and write) method test import pandas as ...

  8. pandas取dataframe特定行/列

    1. 按列取.按索引/行取.按特定行列取 import numpy as np from pandas import DataFrame import pandas as pd df=DataFram ...

  9. Pandas中DataFrame修改列名

    Pandas中DataFrame修改列名:使用 rename df = pd.read_csv('I:/Papers/consumer/codeandpaper/TmallData/result01- ...

  10. Spark与Pandas中DataFrame对比

      Pandas Spark 工作方式 单机single machine tool,没有并行机制parallelism不支持Hadoop,处理大量数据有瓶颈 分布式并行计算框架,内建并行机制paral ...

随机推荐

  1. (转载)完成端口(Completion Port, I/OCP)详解

    http://www.cnblogs.com/lancidie/archive/2011/12/19/2293773.html 手把手叫你玩转网络编程系列之三    完成端口(Completion P ...

  2. Java如何查找系统的代理设置?

    在Java编程中,如何查找系统的代理设置? 以下示例显示如何使用HttpURLConnection类的systemSetting()方法和getResponse()方法的put方法在系统上查找代理设置 ...

  3. php 页面间传递数据

    b.php <?php function getClientIP() { if (getenv("HTTP_CLIENT_IP")) $ip = getenv("H ...

  4. 文件加密 解密 pdftk openssl gpg vim

    openssl加密和解密 . openssl des -salt -in file -out file.des openssl des -d -salt -in file.des -out file ...

  5. 一种消息和任务队列——beanstalkd

    beanstalkd 是一个轻量级消息中间件,其主要特性: 基于管道  (tube) 和任务 (job) 的工作队列 (work-queue):d 管道(tube),tube类似于消息主题(topic ...

  6. 使用Eclipse的坑

    1.运行Eclipse时突然出现找不到或者无法加载主类,这个问题不解决,下面的学习就无从做起,查了网上的一些资料,无法解决,所以还是有点烦人.如果在解决问题的过程中能够学到点什么,也是很值得的,但是就 ...

  7. win10 远程出现身份验证错误 要求的函数不受支持

    win10的一个更新的bug 解决方案 http://note.youdao.com/noteshare?id=68aa9de9fbf46c50a097b3ccf7994580&sub=5AF ...

  8. 标准库 os、sys、logging、configparser、time、requests

    os : 与操作系统交互的模块 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于 ...

  9. GEM5安装

    转自:http://blog.sina.com.cn/s/blog_548b0a230101cagk.html GEM5在ubuntu13.10下安装过程,首先下载gem5_stable最新安装包,解 ...

  10. tomcat启动项目报错:The specified JRE installation does not exist

    在Build Path里设置好jre和各Library的顺序,代码无报错,启动时弹框,里面的信息是:The specified JRE installation does not exist. 后来想 ...