Size: a a a

2020 March 29

ЯК

Ярослав Коробейников in pro.elixir
Там туплы содержащие {"уникальное_слово" => кол-во интегер}
источник

ЯК

Ярослав Коробейников in pro.elixir
Я сортирую по кол-ву насчитанных слов
источник

ЯК

Ярослав Коробейников in pro.elixir
И типа Enum.sort лучше чем List.keysort ?
источник

LL

Lama Lover in pro.elixir
list
|> Enum.reduce(%{}, fn word, acc ->
 Map.update(acc, word, 1, & &1 + 1)
end)
|> Enum.sort_by(& elem(&1, 1), :desc)
источник

LL

Lama Lover in pro.elixir
Lama Lover
list
|> Enum.reduce(%{}, fn word, acc ->
 Map.update(acc, word, 1, & &1 + 1)
end)
|> Enum.sort_by(& elem(&1, 1), :desc)
Вообще в 1.10 ещё появилась Enum.frequencies, которая полностью заменит reduce в моём примере
источник

ЯК

Ярослав Коробейников in pro.elixir
Lama Lover
list
|> Enum.reduce(%{}, fn word, acc ->
 Map.update(acc, word, 1, & &1 + 1)
end)
|> Enum.sort_by(& elem(&1, 1), :desc)
Походу :desc не совсем то
источник

LL

Lama Lover in pro.elixir
Ярослав Коробейников
Походу :desc не совсем то
Какая у тебя версия эликсира?
Эта опция появилась в 1.10, в 1.9 такой опции нет
источник

LL

Lama Lover in pro.elixir
Если 1.9, то вместо & elem(&1, 1) напиши & - elem(&1, 1)
источник

ЯК

Ярослав Коробейников in pro.elixir
Lama Lover
Какая у тебя версия эликсира?
Эта опция появилась в 1.10, в 1.9 такой опции нет
Ээээх. 1.9
источник

ЯК

Ярослав Коробейников in pro.elixir
👍
источник

ЯК

Ярослав Коробейников in pro.elixir
Ещё предложения?
источник

LL

Lama Lover in pro.elixir
Ярослав Коробейников
Ещё предложения?
Я не знаю что это за функция из семи слов и я не знаю зачем ты делаешь List.to_string |> String.split
источник

LL

Lama Lover in pro.elixir
Ярослав Коробейников
Ещё предложения?
Перепиши вторую функцию чтобы не переоткрывать файл каждый раз
источник

ЯК

Ярослав Коробейников in pro.elixir
Lama Lover
Я не знаю что это за функция из семи слов и я не знаю зачем ты делаешь List.to_string |> String.split
|> Enum.map(left_only_words) /Тут в списке могут оказать пробелы как елемент списка [" ", "слово", "  "]
|> List.to_string
|> String.split
И вот превратить в стрингу и из стринги обратно в лист избавляет от этого
источник

LL

Lama Lover in pro.elixir
Ярослав Коробейников
|> Enum.map(left_only_words) /Тут в списке могут оказать пробелы как елемент списка [" ", "слово", "  "]
|> List.to_string
|> String.split
И вот превратить в стрингу и из стринги обратно в лист избавляет от этого
Тогда от этого нужно не так избавляться, а
|> Enum.reduce(%{}, fn word, acc ->
 case String.trim(word) do
   "" -> acc
   word -> Map.update(acc, String.trim(word), 1, & &1 + 1)
 end
end)
источник

ЯК

Ярослав Коробейников in pro.elixir
Как то он начал предложения вставлять
источник

ЯК

Ярослав Коробейников in pro.elixir
Вот что после Enum.map(left_only_words)
источник

LL

Lama Lover in pro.elixir
Ярослав Коробейников
Как то он начал предложения вставлять
Ясно
источник

ЯК

Ярослав Коробейников in pro.elixir
А вот так если
|> List.to_string
|> String.split
источник

LL

Lama Lover in pro.elixir
Ярослав Коробейников
А вот так если
|> List.to_string
|> String.split
Я понял, но это жутко неэффективно. Я не могу просто сидеть здесь и дебажить твой код через тебя, но могу сказать, что тебе нужно научиться пользоваться фильтром и flat_map
источник