Sha256: 22bdffb8e674b6d1796fb6a0086bb8267e28c3a4675faaec2bb34b6d23220c0e
Contents?: true
Size: 1.04 KB
Versions: 2
Compression:
Stored size: 1.04 KB
Contents
# frozen_string_literal: true require "bigdecimal" require "bigdecimal/util" module FeCoreExt::CoreExt end module FeCoreExt::CoreExt::Array def median return if empty? sorted = sort len = sorted.length (sorted[(len - 1) / 2] + sorted[len / 2]) / 2.0 end def mean return if empty? sum.to_d / size end # remove, remove_at, remove_if はこちらのものを使わせてもらっています。 # https://gist.github.com/nekoTheShadow/2de8a324f445bdde8a67 def remove(val) # ブロックが渡されており、かつvalと等しい要素が見つからなかった場合 return yield if block_given? && !self.include?(val) temp = self.dup temp.delete(val) temp end def remove_at(pos) temp = self.dup temp.delete_at(pos) temp end def remove_if temp = self.dup # ブロックを持たない場合 return temp.delete_if unless block_given? self.each { |val| temp.delete(val) if yield(val) } temp end end class Array include FeCoreExt::CoreExt::Array end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
fe_core_ext-0.30.0 | lib/fe_core_ext/core_ext/array.rb |
fe_core_ext-0.29.1 | lib/fe_core_ext/core_ext/array.rb |