[英]TypeError: schema should be StructType or list or None
有人可以向我解釋我的代碼中發生了什么嗎? 下面,我提供了一個可復制的小片段。 當我執行df = spark.createDataFrame(rows, mh.get_schema)
,出現以下錯誤:
TypeError: schema should be StructType or list or None, but got:
<bound method MyHandler.get_schema of <my_handler.MyHandler instance
at 0x7f2f359890e0>>
但為什么??? 該模式在MyHandler
__init__(self)
中MyHandler
。
class MyHandler:
def __init__(self):
self.alarm_schema = StructType(
[
StructField('alarm_id', StringType()),
StructField('timestamp',LongType())
])
def get_schema(self):
return self.alarm_schema
def main(argv):
spark = SparkSession \
.builder \
.appName("Test") \
.master("local[2]") \
.getOrCreate()
mh = MyHandler()
rows = [
(
"12",
1536585248000
)
]
df = spark.createDataFrame(rows, mh.get_schema)
if __name__ == '__main__':
main(sys.argv[1:])
調用方法:
df = spark.createDataFrame(rows, mh.get_schema())
或使其成為財產
@property
def get_schema(self):
return self.alarm_schema
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.