Страницы: 1
RSS
Распределение чисел из массива и статистический ряд
 
Имеется массив чисел, каждое в отдельной ячейке.
Необходимо определить, сколько раз каждое значение случайной величины встретилось в заданной выборке, т.е. посчитать частоты. И если как их считать знакомо, то вопрос - как вывести каждое уникальное значение случайной величины из массива в отдельный столбец, чтобы произвести дальнейшие расчеты?

Сам массив в прикрепленных файлах.
Изменено: sa1lordash0 - 10.12.2019 11:04:32
 
Покажите файл-пример в формате Эксель. Что есть и что хотите получить. И я бы Вам посоветовал изменить ник, сейчас он с нарушением правил.
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
На втором скриншоте - столбец "Случайные величины", который основывается как раз на массиве из первого скриншота. А мой вариант выборки, который имеется - в файле.
 
Код
Sub Read_dic()
    Dim dic As Object
    Set dic = CreateObject("Scripting.Dictionary")
    Dim a As Variant
    a = Range("A2:I15")
    Dim v As Variant
    For Each v In a
        dic(v) = dic(v) + 1
    Next
    Write_dic dic, Range("A23")
End Sub
Sub Write_dic(dic As Object, r As Range)
    r.Cells(1, 1).Resize(dic.Count) = Application.Transpose(dic.Keys())
    r.Cells(1, 2).Resize(dic.Count) = Application.Transpose(dic.Items())
End Sub
 
МатросНаЗебре,спасибо!
 
Вариант на Power Query:
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Список"]}[Content],
    Table = Table.Buffer( Table.FromColumns( {List.RemoveNulls( List.Combine( Table.ToColumns( Source ) ) )}, type table [Случайные величины = number] ) ),
    GroupedRows = Table.Group(Table, {"Случайные величины"}, {{"Частота", each Table.RowCount(_), type number}, {"Относительная частота", each Table.RowCount(_) / Table.RowCount(Table), type number}}),
    SortedRows = Table.Sort(GroupedRows,{{"Случайные величины", Order.Ascending}})
in
    SortedRows
Изменено: PooHkrd - 10.12.2019 12:40:56
Вот горшок пустой, он предмет простой...
Страницы: 1
Наверх