我有以下数据框。
In [12]: dfFinal
Out[12]:
module vectime vecvalue
1906 client1.tcp [1.1007512, 1.1015024, 1.1022536, 1.1030048, 1... [0.0007512, 0.0007512, 0.0007512, 0.0007512, 0...
1912 client2.tcp [1.10079784, 1.10159568, 1.10239352, 1.1031913... [0.00079784, 0.00079784, 0.00079784, 0.0007978...
1918 client3.tcp [1.10084448, 1.10168896, 1.10258008, 1.1036111... [0.00084448, 0.00084448, 0.00089112, 0.0010310...
Run Code Online (Sandbox Code Playgroud)
我想为每个模块绘制 timeSeries vecvaluevs。vectime
为此,我可以执行以下操作:
1) Matplotlib
start = datetime.datetime.now()
for row in dfFinal.itertuples():
t = row.vectime
x = row.vecvalue
x = runningAvg(x)
plot(t,x)
total = (datetime.datetime.now() - start).total_seconds()
print("Total time: ",total)
Run Code Online (Sandbox Code Playgroud)
这样做需要0.07005几秒钟才能完成。
2) 海生
start …Run Code Online (Sandbox Code Playgroud) 我在名为 calculadora.py 的文件中有以下代码
def calcpy(numA,numB):
return numA+numB
Run Code Online (Sandbox Code Playgroud)
从 LibreCalc 中调用函数 calcpy() 的正确方法是什么?我想放入单元格A1=calcpy(B1,C1)并获得结果......
我已经将 python 脚本放在 和 中/usr/lib/libreoffice/share/Scripts/python/,/home/lucas/.config/libreoffice/4/user/Scripts/python我也可以在菜单 Tools->Macro->Organize Macro->Python 下看到它
...但我真的不知道如何调用该函数。
我读过一些建议将函数包装在 Basic 中的文章,例如:
function calcpy(a as double, b as double) as double
script = GetScript("calcpy")
calcpy = script.invoke(Array(a, b), Array(), Array())
end function
Run Code Online (Sandbox Code Playgroud)
...但是每当我使用 =calcpy(5,4) 时,我都会收到一条错误消息:“基本运行时错误。子过程或函数过程未定义。”
这可能吗?使用 Basic 是正确的方法吗?有没有更直接(优雅?)的方法?
谢谢,
卢卡斯
python add-in function user-defined-functions libreoffice-calc
所以我有这个 DF:
In [130]: dfAbr
Out[130]:
ip ospfArea router_name
0 1.1.1.1 0.0.0.2 Router1-1
1 1.1.1.2 0.0.0.2 Router1-2
140 5.5.5.1 0.0.0.5 Router5-1
141 5.5.5.2 0.0.0.5 Router5-2
Run Code Online (Sandbox Code Playgroud)
我想将其重塑为 2 行数据框,例如:
我一直在玩stack/unstack和pivot 功能,但不能走那么远。
例如,dfAbr1 = pd.DataFrame(dfAbr.set_index('ospfArea').stack()).reset_index()重命名列名会产生以下结果:
In [151]: dfAbr1
Out[151]:
ospfArea level1 level2
0 0.0.0.2 ip 1.1.1.1
1 0.0.0.2 router_name Router1-1
2 0.0.0.2 ip 1.1.1.2
3 0.0.0.2 router_name Router1-2
4 0.0.0.5 ip 5.5.5.1
5 0.0.0.5 router_name Router5-1
6 0.0.0.5 ip 5.5.5.2
7 0.0.0.5 router_name Router5-2
Run Code Online (Sandbox Code Playgroud)
从那里开始,我想要pivot它,就像这样: …
python ×3
pandas ×2
add-in ×1
function ×1
matplotlib ×1
performance ×1
pivot ×1
reshape ×1
seaborn ×1