Q:如何在do python方式与天软交互中处理DataFrame数据类型
A:天软和python都能支持json串,在交互过程中,可以通过json串作为数据转换的桥梁,解决编码不一致及数据类型不匹配等的问题。
交互文档:FAQ:
2019-05-08-应用专题-第三方交互07:天软平台和PYTHON的交互
Json转码方式:FAQ:
Q:在天软将结果转换成Json串返回到python中解决转码引起的效率低下问题
使用案例:
天软相关函数简介:
ExportJsonString(data:Any):String,将天软数据结构转换为Json串;
ImportJsonString(data:String):Any,将Json串转换为天软数据结构。
使用范例:
范例:do python中处理DataFrame数据类型
天软代码:天软中调用python执行命令
t:=select datetoint(['date']) as 'date',
['close'],
['vol']
from markettable datekey 20220325T to 20220406T of 'SH600000' end;
//导出天软数据转json串解决字符编码问题
t:=exportjsonstring(t);
//调用python执行命令
r:= rdo2 py_do(t);
//json串转天软数据类型
return importjsonstring(r);
天软代码:封装交互模型py_do
Function py_do(r);
begin
do python in r name 'data',out ret
%%
import json
import pandas as pd
import sys
#读取json格式
data=json.loads(data)
#普通数组转dataframe
df=pd.DataFrame(data,columns=['date','close','vol'])
#增加列
df["amount"]=df["close"]*df["vol"]
#dataframe转回json串
ret=df.to_json(orient='records')
%%;
return ret;
end
代码结果: