Начнем с простого примера: у меня есть массив с тремя столбцами A, B, C. Я хочу, чтобы добавить дополнительные столбцы массива:Как добавить несколько столбцов, сгенерированных из других столбцов - numpy
A/B
A/C
B/C
Эти новые столбцы генерируются из старых с помощью простого элементарного деления включаются все возможные комбинации, кроме симметричных (например, B/A). Это легко сделать вручную для небольшого числа начальных столбцов, но если у меня есть, например, 20 начальных столбцов, тогда 20 * (20-1)/2 = 190 новых столбцов ...
Как это сделать умным способом?
Вторая часть - это использование пользовательской функции вместо деления, например. A + B-A * B
Любая помощь, которую вы можете предоставить, будет отличной.
Вторая проблема: 'mean (A, B) [i] ..' мне непонятно. Не могли бы вы пояснить «i» или добавить рабочий код, который работает для меньшего набора данных? – Divakar
Я думал о чем-то, как это: Защиту myDiv (х, у): возвращение х/у обр = np.random.ranf ((5,4)) R, C = np.triu_indices (arr.shape [1], 1) #arr [:, r]/arr [:, c] #new отношения newArr = myDiv (arr [:, r], arr [,, c]) –
Пожалуйста, добавьте в вопрос. Трудно читать из комментариев. – Divakar