Guf*_*oru 5 logarithm dataframe pandas
请问,有人可以告诉我,如何从SFrame,graphlab(或DataFrame,pandas)列中的每个值中取对数,而不是遍历SFrame列的整个长度?我特别感兴趣的是类似的功能,比如Groupby Aggregators的日志功能.找不到自己......
重要提示:请不要对for-loop列的整个长度进行迭代.我只对特定函数感兴趣,它将所有值转换为整列的日志值.
如果此功能在手册中,我也很抱歉.请给我一个链接......
numpy提供了大量基本数学变换的实现.您可以在基于numpy的所有数据结构上使用它们ndarray.
import pandas as pd
import numpy as np
data = pd.Series([np.exp(1), np.exp(2), np.exp(3)])
np.log(data)
Run Code Online (Sandbox Code Playgroud)
输出:
0 1
1 2
2 3
dtype: float64
Run Code Online (Sandbox Code Playgroud)
此示例适用于pandas数据类型,但适用于所有基于numpy数组的数据结构.
同样的“应用”模式也适用于 SFrame。你可以这样做:
import graphlab
import math
sf = graphlab.SFrame({'a': [1, 2, 3]})
sf['b'] = sf['a'].apply(lambda x: math.log(x))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7198 次 |
| 最近记录: |