索引
不会得到新的对象
索引后得到对象的直接赋值会更改源df,而df调用方法会产生一个新的df。
1 df []索引,一次只能对一个轴索引,
a. df[1:2]填范围时是 index的索引,
b. df[1]填一个值时对columns的索引
c. df[bool]常用的bool索引
2.df.loc 切片 column时用列名定位。
a. df[1]传一个时,只对index索引。
b.可以bool索引.不会有bool索引时的reindex警告。
3.df.iloc 切片,columns可以用坐标定位。传一个时,只对index索引。可以bool索引
合并
1.pd.contact 通过axis空值是纵向还是横向合并。合并时必须是对齐的。产生一个新的对象。
2.merge mysql的join风格。内外链接,链接的主键
3.append 如df的追加一行,
计算
df.corr()相关性
df.add()加法运算,运算前要对齐
df.gt,df.lt, df.ne 两个df之间的比较,输出bool值。
广播
1.apply 可应用于 sl和df(选择轴),还有group对象的apply
2.sl的map方法
categories = {1: 'Alpha', 2: 'Beta', 3: 'Charlie'}
3.applymap函数,applymap(categories.get)
columns和index
时间点,时间段,时间差,数字(index的类型)
1.df.rename({'one': 'foo', 'two': 'bar'}, axis='columns') 重命名
2. ts2.reindex(ts.index) 重排索引,切片
3. reset_index把索引变成特征,增加一个新排列的索引
4 .df.loc[df.groupby("AAA")["BBB"].idxmin()]获取最小的坐标
阶段变量(reshape=group)
1.Interval 数字间隔 Interval_range 一群数字间隔
2.RangeIndex 数字的迭代
3.Period 时间间隔 period_range 一群时间间隔PeriodIndex
4.Timedelta 时间单位 timedelta_range 一群时间单位timedelta_range
5.date_range 时间点的迭代DatetimeIndex
分组
1 分组后获取分组内排序第一的行
df.sort_values(by="BBB").groupby("AAA", as_index=False).first()
2分组后获取每个分组最小坐标的行
df.loc[df.groupby("AAA")["BBB"].idxmin()]
常用设置
# 设置打印展示输出
pd.set_option('display.max_rows', None)
pd.set_option('display.max_columns', None)
pd.set_option('display.max_colwidth', 1000)
pd.set_option('display.width', 1000)
网友评论