在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ 數(shù)據(jù)分析&挖掘/ Pandas函數(shù)應(yīng)用
Pandas教程
Pandas注意事項&竅門
Pandas IO工具
Pandas重建索引
Pandas稀疏數(shù)據(jù)
Pandas時間差(Timedelta)
Pandas聚合
Pandas字符串和文本數(shù)據(jù)
Pandas分類數(shù)據(jù)
Pandas索引和選擇數(shù)據(jù)
Pandas基本功能
Pandas系列
Pandas數(shù)據(jù)幀(DataFrame)
Pandas日期功能
Pandas缺失數(shù)據(jù)
Pandas與SQL比較
Pandas迭代
Pandas合并/連接
Pandas選項和自定義
Pandas級聯(lián)
Pandas可視化
Pandas數(shù)據(jù)結(jié)構(gòu)
Pandas環(huán)境安裝配置
Pandas統(tǒng)計函數(shù)
Pandas窗口函數(shù)
Pandas面板(Panel)
Pandas排序
Pandas函數(shù)應(yīng)用
Pandas快速入門
Pandas描述性統(tǒng)計
Pandas分組(GroupBy)

Pandas函數(shù)應(yīng)用

要將自己或其他庫的函數(shù)應(yīng)用于Pandas對象,應(yīng)該了解三種重要的方法。以下討論了這些方法。 使用適當(dāng)?shù)姆椒ㄈQ于函數(shù)是否期望在整個DataFrame,行或列或元素上進行操作。

  • 表明智函數(shù)應(yīng)用:pipe()
  • 行或列函數(shù)應(yīng)用:apply()
  • 元素函數(shù)應(yīng)用:applymap()

表格函數(shù)應(yīng)用

可以通過將函數(shù)和適當(dāng)數(shù)量的參數(shù)作為管道參數(shù)來執(zhí)行自定義操作。 因此,對整個DataFrame執(zhí)行操作。

例如,為DataFrame中的所有元素相加一個值2。 然后,

加法器函數(shù)

加法器函數(shù)將兩個數(shù)值作為參數(shù)添加并返回總和。

def adder(ele1,ele2):
return ele1+ele2

現(xiàn)在將使用自定義函數(shù)對DataFrame進行操作。

df = pd.DataFrame(np.random.randn(5,3),columns=['col1','col2','col3'])
df.pipe(adder,2)

下面來看看完整的程序 -

import pandas as pd
import numpy as np

def adder(ele1,ele2):
   return ele1+ele2

df = pd.DataFrame(np.random.randn(5,3),columns=['col1','col2','col3'])
df.pipe(adder,2)
print df

執(zhí)行上面示例代碼,得到以下結(jié)果 -

        col1       col2       col3
0   2.176704   2.219691   1.509360
1   2.222378   2.422167   3.953921
2   2.241096   1.135424   2.696432
3   2.355763   0.376672   1.182570
4   2.308743   2.714767   2.130288

行或列智能函數(shù)應(yīng)用

可以使用apply()方法沿DataFramePanel的軸應(yīng)用任意函數(shù),它與描述性統(tǒng)計方法一樣,采用可選的軸參數(shù)。 默認情況下,操作按列執(zhí)行,將每列列為數(shù)組。

示例

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.randn(5,3),columns=['col1','col2','col3'])
df.apply(np.mean)
print df

執(zhí)行上面示例代碼,得到以下結(jié)果 -

      col1       col2        col3                                                      
0   0.343569  -1.013287    1.131245 

1   0.508922  -0.949778   -1.600569 

2  -1.182331  -0.420703   -1.725400

3   0.860265   2.069038   -0.537648

4   0.876758  -0.238051    0.473992

通過傳遞axis參數(shù),可以在行上執(zhí)行操作。

示例-2

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.randn(5,3),columns=['col1','col2','col3'])
df.apply(np.mean,axis=1)
print df

執(zhí)行上面示例代碼,得到以下結(jié)果 -

     col1         col2         col3

0  0.543255    -1.613418    -0.500731   

1  0.976543    -1.135835    -0.719153   

2  0.184282    -0.721153    -2.876206    

3  0.447738     0.268062    -1.937888

4 -0.677673     0.177455     1.397360

示例-3

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.randn(5,3),columns=['col1','col2','col3'])
df.apply(lambda x: x.max() - x.min())
print df

執(zhí)行上面示例代碼,得到以下結(jié)果 -

       col1        col2      col3

0   -0.585206   -0.104938   1.424115 

1   -0.326036   -1.444798   0.196849 

2   -2.033478    1.682253   1.223152  

3   -0.107015    0.499846   0.084127

4   -1.046964   -1.935617  -0.009919

元素智能函數(shù)應(yīng)用

并不是所有的函數(shù)都可以向量化(也不是返回另一個數(shù)組的NumPy數(shù)組,也不是任何值),在DataFrame上的方法applymap()和類似地在Series上的map()接受任何Python函數(shù),并且返回單個值。

示例-1

import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randn(5,3),columns=['col1','col2','col3'])

# My custom function
df['col1'].map(lambda x:x*100)
print df

執(zhí)行上面示例代碼,得到以下結(jié)果 -

       col1      col2       col3    

0    0.629348  0.088467  -1.790702 

1   -0.592595  0.184113  -1.524998

2   -0.419298  0.262369  -0.178849

3   -1.036930  1.103169   0.941882 

4   -0.573333 -0.031056   0.315590

示例-2

import pandas as pd
import numpy as np

# My custom function
df = pd.DataFrame(np.random.randn(5,3),columns=['col1','col2','col3'])
df.applymap(lambda x:x*100)
print df

執(zhí)行上面示例代碼,得到以下結(jié)果 -

output is as follows:
         col1         col2         col3
0   17.670426    21.969052    -49.064031
1   22.237846    42.216693     195.392124
2   24.109576   -86.457646     69.643171
3   35.576312   -162.332803   -81.743023
4   30.874333    71.476717     13.028751

上一篇:Pandas合并/連接下一篇:Pandas迭代