【发布时间】:2021-07-29 18:16:52
【问题描述】:
数据
分类变量 CV1:X1,X2,X3...Xn
数值变量 NV1:1-1000
时间:0-100
| C1 | Time | NV1 |
|---|---|---|
| X1 | 0 | 1 |
| X1 | 1 | 100 |
| X2 | 0 | 200 |
| X2 | 1 | 500 |
操作 1:按类别变量拆分
数据帧1
| C1 | Time | NV1 |
|---|---|---|
| X1 | 0 | 1 |
| X1 | 1 | 100 |
数据帧2
| C1 | Time | NV1 |
|---|---|---|
| X2 | 0 | 200 |
| X2 | 1 | 500 |
操作2:应用自定义函数
import numpy as np
def custom_func (anyarray):
last_element_in_array = anyarray [-1]
first_element_in_array = anyarray [0]
return np.sin (last_element_in_array) * np.ln (first_element_in_array)
custom_func (DataFrame1 ['NV1'].values) # np.sin (100) * np.ln (1)
操作3:重新组合DataFrame1和DataFrame2
| C1 | NV1 |
|---|---|
| X2 | Custom Function output : np.sin (100) * np.ln (1) |
| X2 | Custom Function output : np.sin (500) * np.ln (200) |
【问题讨论】:
-
@PaulH 非常感谢。这是正确的答案。
标签: pandas parallel-processing apply data-wrangling custom-function