pandas常用函数使用备忘

http://pandas.pydata.org/pandas-docs/stable/index.html
pandas官方文档

>>> df = pd.DataFrame(np.arange(12).reshape(3,4),
                      columns=['A', 'B', 'C', 'D'])
>>> df
   A  B   C   D
0  0  1   2   3
1  4  5   6   7
2  8  9  10  11

Drop columns

>>> df.drop(['B', 'C'], axis=1)
   A   D
0  0   3
1  4   7
2  8  11
>>> df.drop(columns=['B', 'C'])
   A   D
0  0   3
1  4   7
2  8  11

Drop a row by index


>>> df.drop([0, 1])
   A  B   C   D
2  8  9  10  11
>>> df = pd.DataFrame({
...     'col1' : ['A', 'A', 'B', np.nan, 'D', 'C'],
...     'col2' : [2, 1, 9, 8, 7, 4],
...     'col3': [0, 1, 9, 4, 2, 3],
... })
>>> df
    col1 col2 col3
0   A    2    0
1   A    1    1
2   B    9    9
3   NaN  8    4
4   D    7    2
5   C    4    3

Sort by col1

>>> df.sort_values(by=['col1'])
    col1 col2 col3
0   A    2    0
1   A    1    1
2   B    9    9
5   C    4    3
4   D    7    2
3   NaN  8    4

这里写图片描述

DataFrame.drop_duplicates(subset=None, keep=’first’, inplace=False)
subset : column label or sequence of labels, optional
用来指定特定的列,默认所有列
keep : {‘first’, ‘last’, False}, default ‘first’
删除重复项并保留第一次出现的项
inplace :默认为 False ,保留一个副本
True 是在原来数据上修改

df = pd.DataFrame({'a': [4,4,5,6],
                    'b': [7,7,8,9],
                    'c': [10,10,11,12]},index=['a','b','c','d'])
df.drop_duplicates(inplace=True)  #在原数据上修改
df = pd.DataFrame({'A': [4,4,5,6], 'B': [7,7,8,9], 'C': [10,10,11,12]},index=['a','b','c','d'])
  A  B   C
a  4  7  10
b  4  7  10
c  5  8  11
d  6  9  12


df1 = pd.melt(df)       #把列的数据移到行上
   variable  value
0         A      4
1         A      4
2         A      5
3         A      6
4         B      7
5         B      7
6         B      8
7         B      9
8         C     10
9         C     10
10        C     11
11        C     12

df2 = df.reset_index()  #把行索引,复制当成一列
 index  A  B   C
0     a  4  7  10
1     b  4  7  10
2     c  5  8  11
3     d  6  9  12

a = df.sort_values(by='C', ascending=False)     #对C那一列,排序由高到低,True为由低到高
b = df.drop('a')       #删除行索引'a'的那行
  A  B   C
d  6  9  12
c  5  8  11
a  4  7  10
b  4  7  10
df数据:
  A  B   C
a  4  7  10
b  4  7  10
c  5  8  11
d  6  9  12

df.loc['a']       #通过行标签索引行数据
A     4
B     7
C    10
df.iloc[2]      #通过行号索引行数据
A     5
B     8
C    11
df.ix['a']       #通过行标签或者行号索引行数据(基于loc和iloc 的混合)
A     4
B     7
C    10
df.ix[:,'A']    #索引A 那一列
a    4
b    4
c    5
d    6

猜你喜欢

转载自blog.csdn.net/lhh08hasee/article/details/79423567