首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Excel中过滤数据

从Excel中过滤数据
EN

Stack Overflow用户
提问于 2022-06-14 10:01:43
回答 1查看 45关注 0票数 0

我正在尝试创建第一个版本的工作程序,它可以读取excel中的数据并过滤这些数字。我的传感器坏了,所以有时会跳到很高的数字。

我已经成功地读取了文件和代码过滤器编号,但问题是我必须运行最后几行代码两次。第一次尝试什么也没发生。

有人能解释或帮助我做错什么吗?我想我正在尝试删除我正在迭代的数字,但我不知道如何处理它。如果我能对这些数字进行排序的话,也许在转换为dict时,不知怎么回事?)

编辑:

文件夹图片

Excel文件中的数据

对于学校,我试着阅读多个Excel数据,取前3列的值。在第二列是路径数据,它显示错误的值。我想找到那些错误的值,并删除那些值和与它们相关的力和时间值(按照屏幕截图2,我试图从第一行删除所有数据)。

我将在进一步的图表、近似和一些计算中使用这些数据,但首先,我需要有一些可以的数据列表。

谢谢!

代码语言:javascript
复制
i = 1
rotorji = {} #open empty dic
rotor = {} #open empty dic
if rotorji is {}:
    rotorji.clear()
else:
     rotorji = {} #if i forget to clear dic

for file in os.listdir():
   if file.endswith(".xlsx"):
       rotorji[i] = {}
       rotor[i] = {}
       rotorji[i] = pd.read_excel(file, usecols=(0, 1, 2), names = ('Time','Path','Force'))
       rotor[i] = rotorji[i].to_dict('list')
       i = i+1


try:
    del i
except NameError:
    pass
try:
    del j
except NameError:
    pass

try:
    del v
except NameError: #celaring variables
    pass

for i in rotor:
    for v in rotor[i]['Path']: #for value in dictionari of key path
        if v < 0.0 or v > 400.0 :
            rotor[i]['Force'].pop(rotor[i]['Path'].index(v))
            rotor[i]['Time'].pop(rotor[i]['Path'].index(v))
            rotor[i]['Path'].pop(rotor[i]['Path'].index(v))
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-14 12:26:40

如果我对你的理解是正确的,你想要过滤出在你的“无题1”列中的某个阈值以上。如果是这种情况,并且您将所有数据都保存在一个dataframe中,那么这将完成以下工作:

代码语言:javascript
复制
threshold = 1000
df = df[df['Untitled 1'] < threshold]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72615049

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档