easy_sheet_io 0.4.1 → 0.4.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: da0f877aebbe7df805dcd3e627e85dda978db30b63e85c2e49f446de258241eb
4
- data.tar.gz: dea47c880fc99009894030b554dd113c0debadca97d1a06117b305f14b9f8d28
3
+ metadata.gz: 68caca55b0bec68b8fba30c5d4d8e38d71bb1f28ddb6718b4eda26b9117ac739
4
+ data.tar.gz: c89f5b6d7a53c7e343c496509ab8b83bae15fe85eeb51fe1c2f0319243a5335a
5
5
  SHA512:
6
- metadata.gz: d1d43fdceefa82ad36b731a832022bade5cb7260943c1541bac21bebdb69545f8bfa1766007020df8b67467914d5fc904f7fb5b67616924d8e91c0f74154f5cd
7
- data.tar.gz: 29200743821a4c44182092155396894cb9463928849159d66544d64cb30ecf3a25782029515bb9f22381c53063ce44c5598297a0bba59dda3ba2d1580c5a87cf
6
+ metadata.gz: 58dbd5ddc679958103e92516460b9989b44a42fa27adccda8e9a09ae95d777c11932f778907d0a53396a4ceb0838989622f88579ad1db78e644216b59bbbf051
7
+ data.tar.gz: be78756f94a2d0449ed5a3644ab336448e5f2a7fa97560b3a626c69df76c3eb74f8b547147f87b1d6cabaaf9cdf677fa7b04e36dc729bf2fea8614162037f978
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EasySheetIo
4
- VERSION = "0.4.1"
4
+ VERSION = "0.4.3"
5
5
  end
data/lib/easy_sheet_io.rb CHANGED
@@ -26,7 +26,7 @@ module EasySheetIo
26
26
  csv = CSV.parse(File.open(path, encoding: encoding, &:read), col_sep: col_sep)
27
27
  rescue
28
28
  # Try Another Encoding
29
- puts "Fail Encoding #{encoding}. Trying cp932..."
29
+ ## puts "Fail Encoding #{encoding}. Trying cp932..."
30
30
  csv = CSV.parse(File.open(path, encoding: "cp932", &:read), col_sep: col_sep)
31
31
  encoding = "cp932"
32
32
  end
@@ -35,7 +35,7 @@ module EasySheetIo
35
35
  return csv
36
36
  elsif format.to_s == "hash"
37
37
  return to_hash(csv, **opt)
38
- else # include format.nil?
38
+ else # include format.nil? ... convert to daru df.
39
39
  ans = to_df(to_hash(csv, **opt), format: format)
40
40
  ans.convert_enc!(from: encoding, to: "utf-8") # if encoding != "utf-8"
41
41
  return ans
data/lib/to_csv.rb CHANGED
@@ -25,15 +25,24 @@ class Daru::DataFrame
25
25
  self.rename_vectors({vecname => vecname})
26
26
  end
27
27
 
28
+ # vector_i番目のヘッダー名を読めるようにエンコード
29
+ def encode_vector_name(vector_i)
30
+ self.vectors.to_a[vector_i].encode Encoding::UTF_8, Encoding::Windows_31J
31
+ end
32
+
33
+ # すべての列に対し実施
34
+ def encode_vectors
35
+ self.vectors = Daru::Index.new(Range.new(0, self.vectors.size-1).map {|i| encode_vector_name df, i })
36
+ end
37
+
28
38
  # ver.0.3.8~ Convert Daru::DF encoding
29
39
  def convert_enc!(from: "cp932", to: "utf-8")
30
40
  self.vectors.each do |col|
31
- if self[col][0].is_a?(String)
32
- self[col] = self[col].each {|val| val.encode!(to, from_encoding: from) if !val.nil? }
33
- end
41
+ self[col] = self[col].each {|val| val.encode!(to, from_encoding: from) if val.is_a?(String)}
34
42
  end
35
43
  end
36
44
 
45
+
37
46
  alias_method :addvec, :add_vector
38
47
  end
39
48
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: easy_sheet_io
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - show-o-atakun
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-02-24 00:00:00.000000000 Z
11
+ date: 2023-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: daru