gpt4 book ai didi

python - 使用 if 语句过滤数据?

转载 作者:太空宇宙 更新时间:2023-11-03 12:43:44 27 4
gpt4 key购买 nike

假设我有一个具有以下格式的 excel 文档。我正在用 pandas 阅读所说的 excel 文档,并使用 matplotlib 和 numpy 绘制数据。一切都很好!

Butttttt.....我不想有更多限制。现在我想限制我的数据,以便我只能对特定的天顶角和方位角进行排序。更具体地说:我只想要天顶在 30 到 90 之间,我只想要方位角在 30 到 330 之间

Air Quality Data
Azimuth Zenith Ozone Amount
230 50 12
0 81 10
70 35 7
110 90 17
270 45 23
330 45 13
345 47 6
175 82 7
220 7 8

这是我正在寻找的那种约束的示例。

 Air Quality Data
Azimuth Zenith Ozone Amount
230 50 12
70 35 7
110 90 17
270 45 23
330 45 13
175 82 7

以下是我的代码:

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

P_file = file1
out_file = file2
out_file2 = file3

data = pd.read_csv(file1,header=None,sep=' ')
df=pd.DataFrame(data=data)
df.to_csv(file2,sep=',',header = [19 headers. The three that matter for this question are 'DateTime', 'Zenith', 'Azimuth', and 'Ozone Amount'.]
df=pd.read_csv(file2,header='infer')
mask = df[df['DateTime'].str.contains('20141201')] ## In this line I'm sorting for anything containing the locator for the given day.
mask.to_csv(file2) ##I'm now updating file 2 so that it only has the data I want sorted for.
data2 = pd.read_csv(file2,header='infer')
df2=pd.DataFrame(data=data2)

def tojuliandate(date):
return.... ##give a function that changes normal date of format %Y%m%dT%H%M%SZ to julian date format of %y%j
def timeofday(date):
changes %Y%m%dT%H%M%SZ to %H%M%S for more narrow views of data

df2['Time of Day'] = df2['DateTime'].apply(timeofday)
df2.to_csv(file2) ##adds a column for "timeofday" to the file

基本上,这就是制作我想要排序的 csv 的所有代码。我将如何进行排序

'Zenith' and 'Azimuth' 

他们是否符合我上面指定的标准?

我知道我需要 if 语句来执行此操作。我尝试过类似的方法,但没有用,我正在寻求一些帮助:

最佳答案

df[(df["Zenith"]>30) & (df["Zenith"]<90) & (df["Azimuth"]>30) & (df["Azimuth"]<330)]

基本上是 Efficient way to apply multiple filters to pandas DataFrame or Series 的副本

关于python - 使用 if 语句过滤数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52763008/

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