#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2020/5/26 23:07
# @Author : LaoChen
import pandas as pd
dict3 = {'a': [6, 4, 3, 5, 2, 1],
'b': ['a', 's', 'd', 'f', 'g', 'h'],
'c': [1, 4, 9, 16, 25, 36]}
df = pd.DataFrame(dict3)
df = df.sort_values(by='a',ascending=True)
df['diff_c'] = df['c'].diff()
df = df.reset_index(drop=True)
#不保留原来的index,直接使用重置后的索引,使用参数drop=True,默认值是False保留原来的index
print(df)
"""
a b c diff_c
0 1 h 36 NaN
1 2 g 25 -11.0
2 3 d 9 -16.0
3 4 s 4 -5.0
4 5 f 16 12.0
5 6 a 1 -15.0
"""
#pd.iloc[i,j] i,j 只能是数字,即原始索引。
#pd.loc[i,‘j’] i,j既可以是数字,也可是字母,即索引标签;更适用于一段数据。
#pd.at[i,‘j’] i,j既可以是数字,也可是字母,不同的是,当定位的是某个具体的元素时,用at[]效率更高。
df.loc[0,'diff_c'] = 1010
print(df)
"""
a b c diff_c
0 1 h 36 1010.0
1 2 g 25 -11.0
2 3 d 9 -16.0
3 4 s 4 -5.0
4 5 f 16 12.0
5 6 a 1 -15.0
"""
DataFrame-diff函数、重置索引、替换
最新推荐文章于 2025-03-18 15:36:29 发布