python知识点巩固

零碎知识点

  • 6.6日
    • 1.copy() 复制
    • 2.drop() 删除
    • 3.[merge()](https://blog.csdn.net/brucewong0516/article/details/82707492)
  • 6.7日
    • 1.value_counts()
    • 2.to_frame()
    • 3.apply()
    • 4.applymap()
  • 6.8日
    • 1.[describe()](https://blog.csdn.net/qq_24754061/article/details/103738513)

6.6日

1.copy() 复制

python知识点巩固_第1张图片

2.drop() 删除

首先import pandas as pd----pandas中的函数

drop([ ],axis=0,inplace=True)
针对索引进行删除

  • 1.drop([行]),删除行, 默认情况下删除某一行;

  • 2.如果要删除某列,需要axis=1;

  • 3.参数inplace:默认情况下为False,表示保持原来的数据不变,True 则表示在原来的数据上改变;

没有带columns,所以要指出是哪个轴上的,需要axis参数
带有columns,所以不用加上axis参数

  • 1和2合并举例

adult_data = adult.copy().drop(columns=[‘Name’, ‘SSN’])

1.原来的adult数据集样子

2.运行“ adult_data = adult.copy().drop(columns=[‘Name’, ‘SSN’])
3

3.merge()

首先需要引入pandas函数

pd.merge(left, right, how=‘inner’, on=None, left_on=None, right_on=None,
left_index=False, right_index=False, sort=True,
suffixes=(‘_x’, ‘_y’), copy=True, indicator=False,
validate=None)
how: One of ‘left’, ‘right’, ‘outer’, ‘inner’. 默认inner。inner是取交集,outer取并集。比如left:[‘A’,‘B’,‘C’];right[’'A,‘C’,‘D’];inner取交集的话,left中出现的A会和right中出现的买一个A进行匹配拼接,如果没有是B,在right中没有匹配到,则会丢失。'outer’取并集,出现的A会进行一一匹配,没有同时出现的会将缺失的部分添加缺失值。

    left: 拼接的左侧DataFrame对象
    right: 拼接的右侧DataFrame对象
    on: 要加入的列或索引级别名称。 必须在左侧和右侧DataFrame对象中找到。 如果未传递且left_index和right_index为False,则DataFrame中的列的交集将被推断为连接键。
    left_on:左侧DataFrame中的列或索引级别用作键。 可以是列名,索引级名称,也可以是长度等于DataFrame长度的数组。
    right_on: 左侧DataFrame中的列或索引级别用作键。 可以是列名,索引级名称,也可以是长度等于DataFrame长度的数组。
    left_index: 如果为True,则使用左侧DataFrame中的索引(行标签)作为其连接键。 对于具有MultiIndex(分层)的DataFrame,级别数必须与右侧DataFrame中的连接键数相匹配。
    right_index: 与left_index功能相似。
    how: One of ‘left’, ‘right’, ‘outer’, ‘inner’. 默认inner。inner是取交集,outer取并集。比如left:[‘A’,‘B’,‘C’];right[’'A,‘C’,‘D’];inner取交集的话,left中出现的A会和right中出现的买一个A进行匹配拼接,如果没有是B,在right中没有匹配到,则会丢失。'outer’取并集,出现的A会进行一一匹配,没有同时出现的会将缺失的部分添加缺失值。
    sort: 按字典顺序通过连接键对结果DataFrame进行排序。 默认为True,设置为False将在很多情况下显着提高性能。
    suffixes: 用于重叠列的字符串后缀元组。 默认为(‘x’,’ y’)。
    copy: 始终从传递的DataFrame对象复制数据(默认为True),即使不需要重建索引也是如此。
    indicator:将一列添加到名为_merge的输出DataFrame,其中包含有关每行源的信息。 _merge是分类类型,并且对于其合并键仅出现在“左”DataFrame中的观察值,取得值为left_only,对于其合并键仅出现在“右”DataFrame中的观察值为right_only,并且如果在两者中都找到观察点的合并键,则为left_only。

import numpy as np
import pandas as pd
from pandas import Series, DataFrame
df1 = DataFrame({'character':['X', 'Y', 'Z'], 'number':[1, 2, 3]}) #列:值,列:值,.....
print(df1)

python知识点巩固_第2张图片
链接两个数据集需要共同索引列或行;
python知识点巩固_第3张图片

6.7日

1.value_counts()

value_counts(normalize=False, sort=True, ascending=False, bins=None, dropna=True)

  • 1.normalize : boolean, 默认false,如为true,则以百分比的形式显示
  • 2.sort : boolean, default True 默认为true,会对结果进行排序
  • 3.ascending : boolean, default False 默认降序排序
  • 4.bins : integer, 格式(bins=1),意义不是执行计算,而是把它们分成半开放的数据集合,只适用于数字数据
  • 5.dropna : boolean, default True 默认删除na值
  • value_counts()是默认显示数字形式,默认排序,默认降序,默认删除na

2.to_frame()

python知识点巩固_第4张图片

3.apply()

DataFrame.apply(func, axis=0, raw=False, result_type=None,
args=(), **kwargs)

参 数:

  • func : function 应用到每行或每列的函数。

  • axis :{0 or ‘index’, 1 or ‘columns’}, default 0 函数应用所沿着的轴。
    0 or index : 在每一列上应用函数。
    1 or columns : 在每一行上应用函数。

  • raw : bool, default False 确定行或列以Series还是ndarray对象传递。

  • False : 将每一行或每一列作为一个Series传递给函数。

  • True : 传递的函数将接收ndarray 对象。如果你只是应用一个 NumPy 还原函数,这将获得更好的性能。

  • result_type : {‘expand’, ‘reduce’, ‘broadcast’, None}, default None
    只有在axis=1列时才会发挥作用。

expand : 列表式的结果将被转化为列。
reduce : 如果可能的话,返回一个Series,而不是展开类似列表的结果。这与 expand 相反。
broadcast : 结果将被广播到 DataFrame 的原始形状,原始索引和列将被保留。
默认行为(None)取决于应用函数的返回值:类似列表的结果将作为这些结果的 Series 返回。但是,如果应用函数返回一个 Series ,这些结果将被扩展为列。

  • args : tuple 除了数组/序列之外,要传递给函数的位置参数。
  • **kwds: 作为关键字参数传递给函数的附加关键字参数。
    python知识点巩固_第5张图片
    应用apply
    python知识点巩固_第6张图片

4.applymap()

6.8日

1.describe()

python知识点巩固_第7张图片

你可能感兴趣的:(python知识碎片,python)