У меня есть такой массив Julia:
Any[Any[["link_1", "link_2", "link_3"], "82", ["A B", "C D", "E F", "G H", "I J"]]]
Я хочу преобразовать это в фрейм данных с тремя столбцами: ссылка, значение и массив. Однако я хочу «расчленить» значения внутри [»link_1», «link_2», «link_3»] (аналогично pandas.DataFrame.explode) и построить фрейм данных в Julia. Я мог бы сделать это в Python, используя функцию разнесения в Pandas, но как мне добиться того же в Julia?





У Джулии есть специальный пакет Dataframes (ссылка на документацию), который я бы посоветовал посмотреть, если вы имеете дело с dataframes. Функция, которую вы ищете: Dataframes.flatten()
# get the package
using Dataframes
# your data, in dataframe form
myRawData = DataFrame(
:links=>[["link_1", "link_2", "link_3"]],
:vals=>["82"],
:array=>[["A B", "C D", "E F", "G H", "I J"]]
)
#=
raw data, visualized:
1×3 DataFrame
Row │ links vals array
│ Array… String Array…
─────┼───────────────────────────────────────────────────────────────────────────
1 │ ["link_1", "link_2", "link_3"] 82 ["A B", "C D", "E F", "G H", "I …
=#
# flattening out the links col
flatten(myRawData,[:links])
#=
output, visualized:
3×3 DataFrame
Row │ links vals array
│ String String Array…
─────┼───────────────────────────────────────────────────
1 │ link_1 82 ["A B", "C D", "E F", "G H", "I …
2 │ link_2 82 ["A B", "C D", "E F", "G H", "I …
3 │ link_3 82 ["A B", "C D", "E F", "G H", "I …
=#
Это должно повторять функциональность Python numpy.explode('links').
Не могли бы вы предоставить ожидаемый результат, поскольку мне трудно понять, чего вы хотите достичь.