Merge timing.
This commit is contained in:
@@ -123,48 +123,44 @@ if __name__ == "__main__":
|
|||||||
serial_df.index = pd.to_datetime(serial_df.index)
|
serial_df.index = pd.to_datetime(serial_df.index)
|
||||||
serial_df.sort_index()
|
serial_df.sort_index()
|
||||||
|
|
||||||
transmission_df = pd.merge_asof(
|
# Select DataFrame rows between two dates
|
||||||
transmission_df,
|
mask = (serial_df.index >= transmission_df.index[0]) & (serial_df.index <= transmission_df.index[-1])
|
||||||
serial_df,
|
serial_df = serial_df.loc[mask]
|
||||||
tolerance=pd.Timedelta("1milliseconds"),
|
|
||||||
right_index=True,
|
|
||||||
left_index=True,
|
|
||||||
)
|
|
||||||
|
|
||||||
transmission_df.index = transmission_df["arrival_time"]
|
transmission_df.index = transmission_df["arrival_time"]
|
||||||
|
|
||||||
# filter active state
|
# filter active state
|
||||||
for i in range(1, 5):
|
for i in range(1, 5):
|
||||||
transmission_df["LTE_SCC{}_effective_bw".format(i)] = transmission_df[
|
serial_df["LTE_SCC{}_effective_bw".format(i)] = serial_df[
|
||||||
"LTE_SCC{}_bw".format(i)
|
"LTE_SCC{}_bw".format(i)
|
||||||
]
|
]
|
||||||
|
|
||||||
mask = transmission_df["LTE_SCC{}_state".format(i)].isin(["ACTIVE"])
|
mask = serial_df["LTE_SCC{}_state".format(i)].isin(["ACTIVE"])
|
||||||
transmission_df["LTE_SCC{}_effective_bw".format(i)] = transmission_df[
|
serial_df["LTE_SCC{}_effective_bw".format(i)] = serial_df[
|
||||||
"LTE_SCC{}_effective_bw".format(i)
|
"LTE_SCC{}_effective_bw".format(i)
|
||||||
].where(mask, other=0)
|
].where(mask, other=0)
|
||||||
|
|
||||||
# filter if sc is usesd for uplink
|
# filter if sc is usesd for uplink
|
||||||
for i in range(1, 5):
|
for i in range(1, 5):
|
||||||
mask = transmission_df["LTE_SCC{}_UL_Configured".format(i)].isin([False])
|
mask = serial_df["LTE_SCC{}_UL_Configured".format(i)].isin([False])
|
||||||
transmission_df["LTE_SCC{}_effective_bw".format(i)] = transmission_df[
|
serial_df["LTE_SCC{}_effective_bw".format(i)] = serial_df[
|
||||||
"LTE_SCC{}_effective_bw".format(i)
|
"LTE_SCC{}_effective_bw".format(i)
|
||||||
].where(mask, other=0)
|
].where(mask, other=0)
|
||||||
|
|
||||||
# sum all effective bandwidth for 5G and 4G
|
# sum all effective bandwidth for 5G and 4G
|
||||||
transmission_df["SCC1_NR5G_effective_bw"] = transmission_df[
|
serial_df["SCC1_NR5G_effective_bw"] = serial_df[
|
||||||
"SCC1_NR5G_bw"
|
"SCC1_NR5G_bw"
|
||||||
].fillna(0)
|
].fillna(0)
|
||||||
|
|
||||||
transmission_df["lte_effective_bw_sum"] = (
|
serial_df["lte_effective_bw_sum"] = (
|
||||||
transmission_df["LTE_SCC1_effective_bw"].fillna(0)
|
serial_df["LTE_SCC1_effective_bw"].fillna(0)
|
||||||
+ transmission_df["LTE_SCC2_effective_bw"].fillna(0)
|
+ serial_df["LTE_SCC2_effective_bw"].fillna(0)
|
||||||
+ transmission_df["LTE_SCC3_effective_bw"].fillna(0)
|
+ serial_df["LTE_SCC3_effective_bw"].fillna(0)
|
||||||
+ transmission_df["LTE_SCC4_effective_bw"].fillna(0)
|
+ serial_df["LTE_SCC4_effective_bw"].fillna(0)
|
||||||
+ transmission_df["LTE_bw"].fillna(0))
|
+ serial_df["LTE_bw"].fillna(0))
|
||||||
transmission_df["nr_effective_bw_sum"] = transmission_df["SCC1_NR5G_effective_bw"]
|
serial_df["nr_effective_bw_sum"] = serial_df["SCC1_NR5G_effective_bw"]
|
||||||
|
|
||||||
transmission_df["effective_bw_sum"] = transmission_df["nr_effective_bw_sum"] + transmission_df[
|
serial_df["effective_bw_sum"] = serial_df["nr_effective_bw_sum"] + serial_df[
|
||||||
"lte_effective_bw_sum"]
|
"lte_effective_bw_sum"]
|
||||||
|
|
||||||
# transmission timeline
|
# transmission timeline
|
||||||
@@ -182,8 +178,6 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
ax00 = ax[1]
|
ax00 = ax[1]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
snd_plot = ax0.plot(
|
snd_plot = ax0.plot(
|
||||||
transmission_df["snd_cwnd"].dropna(),
|
transmission_df["snd_cwnd"].dropna(),
|
||||||
color="lime",
|
color="lime",
|
||||||
@@ -204,14 +198,14 @@ if __name__ == "__main__":
|
|||||||
)
|
)
|
||||||
|
|
||||||
# sum all effective bandwidth for 5G and 4G
|
# sum all effective bandwidth for 5G and 4G
|
||||||
transmission_df["SCC1_NR5G_effective_bw"] = transmission_df["SCC1_NR5G_bw"].fillna(0)
|
serial_df["SCC1_NR5G_effective_bw"] = serial_df["SCC1_NR5G_bw"].fillna(0)
|
||||||
transmission_df["effective_bw_sum"] = (
|
serial_df["effective_bw_sum"] = (
|
||||||
transmission_df["SCC1_NR5G_effective_bw"]
|
serial_df["SCC1_NR5G_effective_bw"]
|
||||||
+ transmission_df["LTE_SCC1_effective_bw"]
|
+ serial_df["LTE_SCC1_effective_bw"]
|
||||||
+ transmission_df["LTE_SCC2_effective_bw"]
|
+ serial_df["LTE_SCC2_effective_bw"]
|
||||||
+ transmission_df["LTE_SCC3_effective_bw"]
|
+ serial_df["LTE_SCC3_effective_bw"]
|
||||||
+ transmission_df["LTE_SCC4_effective_bw"]
|
+ serial_df["LTE_SCC4_effective_bw"]
|
||||||
+ transmission_df["LTE_bw"]
|
+ serial_df["LTE_bw"]
|
||||||
)
|
)
|
||||||
bw_cols = [
|
bw_cols = [
|
||||||
"SCC1_NR5G_effective_bw",
|
"SCC1_NR5G_effective_bw",
|
||||||
@@ -222,11 +216,10 @@ if __name__ == "__main__":
|
|||||||
"LTE_SCC4_effective_bw",
|
"LTE_SCC4_effective_bw",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
serial_df["time_rel"] = serial_df["time"] - serial_df["time"].iloc[0]
|
||||||
|
serial_df.index = serial_df["time_rel"] / 60
|
||||||
|
|
||||||
transmission_df.to_csv("{}{}_plot.csv".format(args.save, csv.replace(".csv", "")))
|
ax_stacked = serial_df[bw_cols].plot.area(stacked=True, linewidth=0, ax=ax00)
|
||||||
exit()
|
|
||||||
|
|
||||||
ax_stacked = transmission_df[bw_cols].plot.area(stacked=True, linewidth=0, ax=ax00)
|
|
||||||
ax00.set_ylabel("bandwidth [MHz]")
|
ax00.set_ylabel("bandwidth [MHz]")
|
||||||
#ax.set_xlabel("time [minutes]")
|
#ax.set_xlabel("time [minutes]")
|
||||||
#ax00.set_xlim([0, transmission_df.index[-1]])
|
#ax00.set_xlim([0, transmission_df.index[-1]])
|
||||||
|
|||||||
Reference in New Issue
Block a user