zoukankan      html  css  js  c++  java
  • Python Pandas库的学习(二)

    今天我们继续讲下Python中一款数据分析很好的库。Pandas的学习

    接着上回讲到的,如果有人听不懂,麻烦去翻阅一下我前面讲到的Pandas学习(一)

    如果我们在数据中,想去3,4,5这几行数据,那么我们怎么取呢?

    food.loc[3:6]

    可以看到,这种取法跟Python中,切片操作一样。

    如果我想去单独某几条数据,只需要传入index值即可

    food.loc[[2,5,10]]

     

     如果我先想不通过行去取数据,想通过列去取数据的话,我们该怎么做呢??

    我们可以通过列名去拿取数据

    col_NB = food["NDB_No"]
    print(col_NB)

    可以看到,我们取到了第一列的数据出来。

    那么我们想取两列数据出来,我们应该怎么操作呢?

    方法跟上面一样,将列名加到里面,组成一个list列表。

    col_2 = ["Zinc_(mg)","Copper_(mg)"]
    col_2_all = food[col_2]
    print(col_2_all)

    来我们看下数据上面,有些列名是带了单位的,那么我们怎么选择其中某几个一样单位的列呢?

     我们先要取到全部的列名,然后将列名中带有单位(g)的列名取出,并单独放到一个列表中,最后在取这个列表中的列的数据即可

    col_names = food.columns.tolist()
    print(col_names)
    gram_columns = []
    for c in col_names:
        if c.endswith("(g)"):
            gram_columns.append(c)
    gram_df = food[gram_columns]
    print(gram_df.head(3))

    这些都是些简单的操作,

    再比如说,我们想进行一些加减乘除的操作。

    我想把单位为mg的数据,转换成g的数据,这里的做法,就跟Numpy是类似的。 

    print(food["Iron_(mg)"])
    div_1000 = food["Iron_(mg)"]/1000
    print(div_1000)

    我们在对某个数据上进行操作,即可得到我们想要的结果。

    water_energy = food["Water_(g)"]*food["Energ_Kcal"]

    对应位置的乘法操作,需要保证的是,维度要相同才可以!

    water_energy = food["Water_(g)"]*food["Energ_Kcal"]
    water_energy = food["Water_(g)"]*food["Energ_Kcal"]
    iron_grams = food["Iron_(mg)"]/1000
    print(food.shape)
    food["Iron_(g)"]=iron_grams
    print(food.shape)

    上一段代码可以看到,我们把一列名称的值,进行单位转换,把mg转换为g,然后新建了一列数据

    将这列数据放到数据集中,之前打印出来的数据维度,8618个样本,和36个属性值。后面打印的

    是37个属性值,也就是我们将新的属性值,放入到原来的数据值中了!前提是,其中的维度要对应上才可以。

    weighted_protein = food["Protein_(g)"]*2
    weighted_fat =-0.75* food["Lipid_Tot_(g)"]
    initial_rating = weighted_protein + weighted_fat

    比如说这些运算操作, 维度一样,相当于对应位置进行运算。

    跟Numpy一样,我们也有一些别方法,求最大值,最小值,平均值等等

     方式基本上跟Numpy类似。

    今天就先讲到这里。感谢大家的阅读!感谢~~

  • 相关阅读:
    牛客寒假算法基础集训营1 C 小a与星际探索(思维+异或)
    牛客寒假算法基础集训营4 E Applese 涂颜色
    Python的range()函数用法
    R语言读取XML数据
    R语言如何读取.csv文件
    反转链表
    HashSet HashTable HashMap 区别
    输入两个整数 n 和 m,从数列1,2,3.......n 中随意取几个数,使其和等于 m ,要求将其中所有的可能组合列出来.
    Activity生命周期之我见
    左旋转字符串
  • 原文地址:https://www.cnblogs.com/ws17345067708/p/10831116.html
Copyright © 2011-2022 走看看