gpt4 book ai didi

python - 如何在图表中运行 elif 函数?

转载 作者:太空宇宙 更新时间:2023-11-03 16:15:15 26 4
gpt4 key购买 nike

我有一个具有相应温度值的数据集,其中有一列名为 CO2-rh:

import pandas as pd
df=pd.read_csv('F:/data32.csv',parse_dates=['Date'])
print (df)
Temperature unit unit.1 CO2 flux.1 %Root Resp CO2-Rh
4.5 umol/m2/s mg/cm^2/h 0.001210 26.5 0.000889
4.5 umol/m2/s mg/cm^2/h 0.001339 26.5 0.000984
6.5 umol/m2/s mg/cm^2/h 0.001339 26.5 0.000984
5.3 umol/m2/s mg/cm^2/h 0.001469 26.5 0.001080
4.0 umol/m2/s mg/cm^2/h 0.001598 26.5 0.001175
5.5 umol/m2/s mg/cm^2/h 0.001598 26.5 0.001175
5.0 umol/m2/s mg/cm^2/h 0.001771 26.5 0.001302
5.0 umol/m2/s mg/cm^2/h 0.001944 26.5 0.001429
4.5 umol/m2/s mg/cm^2/h 0.003110 26.5 0.002286
10.3 umol/m2/s mg/cm^2/h 0.001166 26.5 0.000857
9.0 umol/m2/s mg/cm^2/h 0.002030 26.5 0.001492

我有一个具有相应温度值的数据集,其中有一列名为 CO2-rh。我想告诉我的函数,根据平均温度划分数据集,如果温度高于值 8.21,我希望数据进入数据集“a”,而任何等于或低于 8.21 的数据进入数据集“a”数据集“b”(我觉得这是绘制两个单独图表的最佳方法)。我能做些什么?到目前为止,这就是我得到的。

if df['Temperature']> 8.212312312312307:
plt.plot(df['Temperature'],df['CO2-rh'],linewidth=3)
plt.show()

最佳答案

看起来需要boolean indexingDataFrame.plot :

import matplotlib.pyplot as plt

mask = df['Temperature']> 8.212312312312307

df1 = df[mask]
df2 = df[~mask]
print (df1)
Temperature unit unit.1 CO2 flux.1 %Root Resp CO2-Rh
9 10.3 umol/m2/s mg/cm^2/h 0.001166 26.5 0.000857
10 9.0 umol/m2/s mg/cm^2/h 0.002030 26.5 0.001492

print (df2)
Temperature unit unit.1 CO2 flux.1 %Root Resp CO2-Rh
0 4.5 umol/m2/s mg/cm^2/h 0.001210 26.5 0.000889
1 4.5 umol/m2/s mg/cm^2/h 0.001339 26.5 0.000984
2 6.5 umol/m2/s mg/cm^2/h 0.001339 26.5 0.000984
3 5.3 umol/m2/s mg/cm^2/h 0.001469 26.5 0.001080
4 4.0 umol/m2/s mg/cm^2/h 0.001598 26.5 0.001175
5 5.5 umol/m2/s mg/cm^2/h 0.001598 26.5 0.001175
6 5.0 umol/m2/s mg/cm^2/h 0.001771 26.5 0.001302
7 5.0 umol/m2/s mg/cm^2/h 0.001944 26.5 0.001429
8 4.5 umol/m2/s mg/cm^2/h 0.003110 26.5 0.002286


df1[['Temperature','CO2-Rh']].plot(linewidth=3)
df2[['Temperature','CO2-Rh']].plot(linewidth=3)
plt.show()

关于python - 如何在图表中运行 elif 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38992866/

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