数据处理库Pandas数据结构DataFrame

Dataframe是一种二维数据结构,数据以表格形式(与Excel类似)存储,有对应的行和列,如图3-3所示。它的每列可以是不同的值类型(不像 ndarray 只能有一个 dtype)。基本上可以把 DataFrame 看成是共享同一个 index 的 Series 的集合。

DataFrame 的构造方法与 Series 类似,只不过可以同时接受多条一维数据源,每一条都会成为单独的一列,演示代码如下。DataFrame创建方法比较丰富,可以通过字典、列表、ndarrays、Series对象创建而来。

import pandas as pd
data1 = [['Google',10],['Runoob',12],['Wiki',13]]
df1 = pd.DataFrame(data1,columns=['Site','Age'])
print(df1)
data2 = [{'a': 1, 'b': 2},{'a': 5, 'b': 10, 'c': 20}]
df2 = pd.DataFrame(data2)
print (df2)
data3 = {'Site':['Google', 'Runoob', 'Wiki'], 'Age':[10, 12, 13]}
df3 = pd.DataFrame(data3)
print (df3)

运行结果如图3-4所示。

如下面的代码所示,Pandas可以使用 loc 属性返回指定行的数据,如果没有设置索引,第一行索引为0,第二行索引为1,以此类推。它也可以返回多行数据,使用[[ ... ]]格式,...为各行的索引,以逗号隔开。

import pandas as pd
data = {
  "calories": [420, 380, 390],
  "duration": [50, 40, 45]
}
#数据载入DataFrame对象
df = pd.DataFrame(data)
#返回第一行
print(df.loc[0])
#返回第二行和第三行
print(df.loc[[1, 2]])

运行结果如图3-5所示。

另外,也可以只获取 dataframe 中的几列,比如当处理数据的时候series较多,我们可以只关注其中一些特定的列,代码如下,假设只关注apple和banana数据列。

import pandas as pd
data2 = {
  "mango": [420, 380, 390],
  "apple": [50, 40, 45],
  "pear": [1, 2, 3],
  "banana": [23, 45,56]
}
df = pd.DataFrame(data2)
print(df[["apple","banana"]])

运行结果如图3-6所示。

本文节选自《PyTorch深度学习与企业级项目实战》,获出版社和作者授权发布。

相关推荐

  1. Pandas 数据结构 - DataFrame

    2024-04-02 23:30:04       20 阅读
  2. pandas数据结构Series, DataFrame

    2024-04-02 23:30:04       44 阅读
  3. python pandas dataframe常用数据处理总结

    2024-04-02 23:30:04       37 阅读
  4. pandas数据结构Series, DataFrame的索引方式总结

    2024-04-02 23:30:04       43 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-02 23:30:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-02 23:30:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-02 23:30:04       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-02 23:30:04       20 阅读

热门阅读

  1. 【TC3xx芯片】TC3xx芯片ACCEN寄存器保护详解

    2024-04-02 23:30:04       13 阅读
  2. 图像最低三位的可能情况

    2024-04-02 23:30:04       12 阅读
  3. 数据库 之 关系型数据库和非关系数据库

    2024-04-02 23:30:04       16 阅读
  4. 面试宝典:深入分析golang 的 泛型

    2024-04-02 23:30:04       13 阅读
  5. babyAGI(6)-babyCoder源码阅读2任务描述部分

    2024-04-02 23:30:04       16 阅读
  6. 逆序对————权值线段树+离散化写法

    2024-04-02 23:30:04       16 阅读
  7. MYSQL数据库的故障排除与优化

    2024-04-02 23:30:04       34 阅读
  8. 预防 MySQL 死锁的策略

    2024-04-02 23:30:04       14 阅读
  9. Mysql哪些查询不走索引

    2024-04-02 23:30:04       13 阅读