python-3.x - 如何在 Python 中的 DataFrame 列表中快速应用函数?
问题描述
我有一个列和行长度相等但值不同的 DataFrame 列表,例如 data = [df1, df2,df3.... dfn] 。如何在列表数据中的每个数据帧上应用函数函数?我使用了以下代码,但它不起作用
data = [df1, def2,df3.... dfn]
def maxloc(data):
data['loc_max'] = np.zeros(len(data))
for i in range(1,len(data)-1): #from the second value on
if data['q_value'][i] >= data['q_value'][i-1] and data['q_value'][i] >= data['q_value'][i+1]:
data['loc_max'][i] = 1
return data
df_list = [df.pipe(maxloc) for df in data]
解决方案
在我看来,问题出在您的 maxloc() 函数中,因为此代码有效。我还在 maxloc 的返回中添加了最大值。
from random import randrange
import pandas as pd
def maxloc(data_frame):
max_index = data_frame['Value'].idxmax(0)
maximum = data_frame['Value'][max_index]
return max_index, maximum
# create test list of data-frames
data = []
for i in range(5):
temp = []
for j in range(10):
temp.append(randrange(100))
df = pd.DataFrame({'Value': temp}, index=(range(10)))
data.append(df)
df_list = [df.pipe(maxloc) for df in data]
for i, (index, value) in enumerate(df_list):
print(f"Data-frame {i:02d}: maximum = {value} at position {index}")
推荐阅读
- javascript - 无法显示从 API 获取的数据
- assembly - 按下鼠标时如何跳转到标签?
- r - 将连续数值转换为由区间定义的离散类别。代码运行没有错误,但未创建所有类别
- css - Woo-commerce店面如何不在移动设备上隐藏搜索栏
- python - 如何将字符串列表附加到一个字符串列表中,后跟“;”
- networking - 为什么 TCP 连接终止需要 4 个步骤?
- java - 您如何摆脱先前页面中的“垃圾”元素?(appium android java selenium)
- javascript - 按图像导航
- javascript - 对象属性为空,但输入的值不是。如何正确插入值?
- node.js - 等待 http 请求完成,然后在 nodejs 中继续循环