gpt4 book ai didi

Python Pandas,删除列中增加的行

转载 作者:行者123 更新时间:2023-12-01 09:31:27 35 4
gpt4 key购买 nike

这是我的问题的简短示例版本:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt


x = np.arange(1, 101, 1)
y1 = np.linspace(0, 1000, 50)
y2 = np.linspace(500, 2000, 50)
y = np.concatenate((y1, y2))
data = np.asmatrix([x, y]).T
df = pd.DataFrame(data)

fig, ax = plt.subplots(figsize=(12,8))
ax.plot(df.iloc[:, 0], df.iloc[:, 1], 'r')
plt.gca().invert_yaxis()
plt.show()

请运行代码并查看它生成的绘图。 enter image description here

我想从后面读取数据帧(从 x=100 到 x=0)并确保我的 y 轴始终减小(从 y=2000 到 y=0)。我想删除从数据帧末尾读取时 y 值不减少的行。

如何编辑我的数据框来实现这一点?

最佳答案

我对这个解决方案不太满意,但总比没有好。我发现很难在不变得过于模糊的情况下描述这个问题。如果您发现有改进的余地,请发表评论,因为我知道还有改进的余地。

newindex = []
max = -999

for row in df.index:
if df.loc[row, 1] > max:
max = df.loc[row, 1]
newindex.append(row)

df = df.loc[newindex,]

关于Python Pandas,删除列中增加的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49931125/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com