Thank you for the clarification.
My understanding is that the current deprecation warning originates from Pandas rather than JMP, and that future JMP releases will support the Arrow/PyCapsule interface directly, allowing workflows such as:
dt = jmp.open(...)
pandas_df = pd.DataFrame.from_arrow(dt)
without relying on the DataFrame Interchange Protocol.
In the meantime, I am trying to determine the best approach for maintaining production scripts that are deployed across JMP versions.
Historically, in JMP 18, I relied on a custom conversion function:
def jmp_to_pandas(jmp_table):
data = {}
for col in jmp_table:
data[col.name] = list(col)
return pd.DataFrame(data)
After moving to JMP 19, I switched to:
pd.api.interchange.from_dataframe(...)
which works but now generates the Pandas deprecation warning.
Would your recommendation be to continue using the interchange API until the Arrow support ships and I have to re-visit the production deployed script, or would you suggest reverting to a custom DataTable to DataFrame conversion for production code that needs to remain stable across Pandas and JMP version updates?
Also, for the upcoming Arrow implementation, will pyarrow be a required dependency, or will the Arrow interface be exposed through JMP without requiring users to install additional packages?
Thank you for the additional context.