当前位置: 首页 > 知识库问答 >
问题:

关于Apache beam for python中过滤返回值和预期返回类型的问题

祝宏放
2023-03-14

关于使用Apache Beam for Python(Google Cloud Dataflow)开发地图缩减管道,我有两个问题。

def function(input):
  if not input > 0:
    return None
  else:
    return input*2

p = beam.Pipeline()

(p
 | 'read some input from a source'
 >> read_from_datastore(some_query)
 | 'perform an operation on the input'
 >> beam.Map(function)
 | 'filter out invalid values'
 >> beam.Filter(lambda x: x is not None)
)

共有1个答案

邢项禹
2023-03-14
  • beam.map和beam.dofn的返回类型应该是列表吗?
    • 不,这对。map是不正确的。如果您正在实现ParDo,那么ParDo应该输出list。
    • 可以使用。FlatMap()并返回空列表。Map用于1:1转换。最终,.map在内部使用。FlatMap。

 类似资料:
  • 我正在使用JUnit和Mockito库来测试我的应用程序。问题是,当我在代码下面执行时,值在运行时没有返回空列表,并且测试失败。理想情况下,当get执行时,它应该返回空列表 我热切期待着支持。有没有人能帮我一下,如何通过这个测试用例???。如何通过Mockito使第8行的控件通过测试用例??? 请假设,下面两个类没有真实的代码,我们只有二进制文件作为JAR文件,我们不能修改下面的代码....我附上

  • 假设我已经包装了我的C类和,并且可以通过SWIG生成的模块从Python访问它们: 在Python中,我创建了面向用户的类,它是一个浅层代理,主要添加docstring,并允许IDE对参数名称进行制表符补全: 问题在于,返回类型为,它没有docstring,也不显示参数名称(swig将所有参数公开为)。相反,我希望它提供我自己的浅代理

  • 问题内容: 嘿,我只是在Java文档上浏览I / O流上的内容,而刚刚遇到了专门针对字节流的问题-如果输入是字节流,为什么read()不返回字节值? 我挠了一下头,但想不出任何有力的答案,如果有人能帮助我将不胜感激。 问题答案: 这是因为可以返回-1作为流结束(EOF)标记的指示符-即不再需要从流中读取字节。 更多详细信息:http : //download.oracle.com/javase/1

  • 我是Scala期货的新手,我对Scala期货的回报值有疑问。 因此,scala未来的语法通常是 我想知道如何从调用此方法的其他方法访问。 换句话说, 那么应该用什么方法让< code>List[Int]脱离未来呢? 我尝试过使用地图方法,但无法成功做到这一点。

  • 为了澄清所使用的输入是100,用于投资金额,利率为5%(在该程序中,取5/100,然后/12=0.00417),在这种情况下,投资的持续时间为6个月。因此,在任何利息累积之前的第0个月,没有利息,所以这只是投资的投入金额(100)。然后,在第一个月,它现在运行正常((100*i)*(i interest());或在或情况下((100*1)*(10.00417))=100.417 但当我到了第二个月

  • 值a、b和c的组合是唯一的。 我想通过使用值a和b执行bool筛选搜索来查找“value_c”的值。 在我的代码中,我尝试如下: 我是不是漏掉了什么?会不会是因为数据集太小?我们在代码库的其他地方使用了相同的Bool Filter Elastica查询,这些查询如预期的那样工作,但是我似乎无法从这个索引中返回任何数据。 如有任何帮助,不胜感激。