-
1. Re: [解答編 Part1(頭の体操)] 時間のグラフ=エクセル複製
LM Seven Feb 22, 2018 3:27 AM (in response to Shinichiro Murakami) -
2. Re: [解答編 Part1(頭の体操)] 時間のグラフ=エクセル複製
Yoshihito Kimura Feb 22, 2018 6:11 AM (in response to Shinichiro Murakami)お疲れ様です
今回、時間がなくて参加できませんでした。残念。
(実際のところ、floatをつかったりして、少し挑戦はしてみたのですが、上手くいかずに保留にしてました)
手間のかかる問題を・・・と思ってましたが、出題された村上さんの方も大変な事になってみたいですね。
お疲れさまでした。何より参加者が増えていい感じですね!
p.s.読みました。いつもながら凄いですねー。
-
3. Re: [解答編 Part1(頭の体操)] 時間のグラフ=エクセル複製
Shinichiro MurakamiFeb 22, 2018 6:56 AM (in response to LM Seven)
LM-7さん
半分想定外ってとこですかね。
ちゃんと計算式作らないと、ある程度ズレが出るのは分かってたのですが、それ以外にも要因があるとは。。
っていうか、本質的には
0.4+0.4+0.4 = 1.2 と 0+0+0=1
が同じものを指しているって単純なことです。これが時間表示だと非常に分かりにくくなるってことですね。
加えて、日付時刻に関しては、コピペとか、もとの表示形式、データタイプとかによって、実際の数字自身も変わってしまう可能性がある、
という厄介な問題を抱えています。
けっこう慎重に出題したつもりだったんですけどね。
大学入試の出題にも不備があったとか話題になってますけど、問題作るのも、ムズカシイネ。
Shin
-
4. Re: [解答編 Part1(頭の体操)] 時間のグラフ=エクセル複製
Shinichiro MurakamiFeb 22, 2018 6:54 AM (in response to Yoshihito Kimura)
「保留」!!!
そんな選択肢があったとは。。。
Shin
-
5. Re: [解答 データ準備編(頭の体操)] 時間のグラフ=エクセル複製
LM Seven Feb 23, 2018 6:27 PM (in response to Shinichiro Murakami)時間ができたので、おそらくShinさんが気づいていない点を補足しておきます。
①ExcelにはStartはミリ秒以下が無いですがEndがミリ秒以下があるので、それをどの形式で読むかがポイントになります。
両方共日付+時刻で読んでみましょうか。
②Endがどの精度で読まれているかを確認するために、「文字列」に変えて置いてみます。
ミリ秒以下が付与されていることがわかります。日付+時刻読み込みをするとミリ秒精度となることがわかります。
③では、読むときに文字列形式で読み込んでみましょうか。再度新規のワークブックを開き、読み込むところから
やり直します(開き直しは必須です。やってみるとわかりますが)。そして両方共文字列で読んでみます。
④Endの精度を確認してみましょう。ミリ秒以下はありません。
文字列読み込みにするとExcelの表示形式に準じた精度で読み込まれることがわかります(今は秒精度)。
なので、今回は両方共文字列で読み込むと所望の結果が得られることがわかります。
⑤ datediffを利用するには両方共文字列では困るので、日付+時刻に変えます。
ここで日付+時刻に変えるのなら読み込むときから日付+時刻でいいんじゃないかと思いがちですが、
読み込みの時点で精度が決まるんですね。シートに移動してから型を変えても読み込み時の精度は変わりません。
で、ここからがおそらく英語環境を利用されているShinさんが気づいていない罠。
……と思ったんですが、どーやっても再現しない!なぜ????
日本語ロケールだと例えば2/6/2018が2018-06-02に読み込まれることがあって、diffの値が幾つかの項目で異なるという現象が
あったのですが、今やってみると再現しませんね。USロケールに変えることで回避はできたのですが。
ということで、Shinさんが気づいていないだろう罠を説明するために長々と書いてきましたが、
本題が再現しないという体たらくで。でもせっかくここまで書いたので投稿はしておきます…
-
6. Re: [解答 データ準備編(頭の体操)] 時間のグラフ=エクセル複製
Shinichiro MurakamiFeb 23, 2018 6:37 PM (in response to LM Seven)
(失礼な言い方ですが)なんだか分からないけど、ありがとうございます。
Localeとか、Universal DateTimeとか出てくると、ちょっと別次元になりそうですね。
「今日はこれくらいにしといたろ(震え声)」で逃げないといけなくなってきます。。
で、時刻精度ですが、すでに説明した内容で、
「Datetimeにした時の表示が秒単位で同じである限り、問題は起こらない」
と認識しているのですが、違っていたら、教えてください。
っていてもこれ以上、深堀りするつもりもありませんが。
いずれにしても、おつきあい頂きありがとうございます。
Shin
-
7. Re: [解答 データ準備編(頭の体操)] 時間のグラフ=エクセル複製
LM Seven Feb 23, 2018 6:45 PM (in response to Shinichiro Murakami)当方も何が原因であんなことが起こったんだか…
再現を確認してから書き始めれば良かったとorz。
DataTimeにした時の秒単位が同じである限り問題がおきないのはそのとおりだと思います。