ゆうは

わかりたいことを深堀り

ダンスは音楽

私はダンスの経験はないですが、昔からなぜかダンスを観るのが好きでした。

そのダンスでずっと疑問がありました。
それは、「かっこいいはずなのに魅力を感じないダンスがある」ということです。

腕の角度や身体の向きが揃っているけど魅力は感じないダンスがある一方で、一人ひとりが好きなように踊っているように見えるけど「おぉー!かっこいい!」と思うダンスがある。

私はすべてがきっちり揃っているダンスの方がプロフェッショナルだと思ってました。
けど、そんなダンスを観てもなんとも思わないことが多い。
長年の疑問でした。

最近、疑問が晴れました。
まんが「ワンダンス」にありました。

・・・形を合わせなくても
同じ音を 同じアクセントで取ればダンスは揃う
2人ともリズムを体感で受け止めて動こうとしている・・・

そもそもダンスにはこういう考え方があったんですね。

このセリフの前には主人公のセリフがあります。

「音を聴く」・・・
そうだよな
音楽があって
その後にダンスがあるんだから

踊っている感じが全然ちがう
何で今まで気付かなかっただろう

「ダンスは身体を動かすもの」という先入観があったけど、身体を動かすことの前にまず音楽がある。ダンスは「音楽を表現しているもの」と考えると、音楽が好きな私がダンスを好きなのも理解できる。

ワンダンスの主題歌のBE:FIRSTの「Stare In Wonder」のダンスは全然揃えようとしてしていないけど、揃っているしかっこいい。このダンスを観ると、曲がより好きになる。


www.youtube.com

まず、書き終える

ブログを書こうとしても書けません。
このブログもずっと更新できずにいてます。なんとかしようと思っていたところ、良い言葉に出会いました。

三宅香帆さんの書籍『「好き」を言語化する技術』にこうありました。

なによりも重要なのは「まず、書き終える」こと。

これですね。書き終えないからブログにできない。
今までいろんな文章作成系の本を読んできましたが、これについて書かれているのを見たことがないです。書いてあったかもしれませんが、ここまではっきりと書いているのはなかったと思います。

書き終えるのが重要なんて、みんなが「当然でしょ」と思っているから書かないと思うんです。しかし、私は下書きだけが日々増えていき、書き終えることがむつかしいです。集中力がない、テーマが決まっていないのが原因と思っていました。

原因は、書き終えようとしていないから書けないんです。書き終えるためには考えていることをシンプルにしなければいけないですが、それができない。ごちゃごちゃと考えすぎて疲れて途中でやめてしまう。

しばらくは、とにかく書き終えることをがんばろうと思います。

yfinanceとPythonで株データ取得方法

yfinanceを使って株のデータを取得する方法です。

私は株式投資の初心者なので、データを集めることに苦労します。ちょっとしたデータでもどこにあるのかわからずに時間がかかってしまって、それだけで疲れてしまいます。

そこで、Pythonを使ってみたところ楽に集めることができました。私のような「超」初心者でもコードは基本的なデータを集めるのは簡単でした。

とりあえず、このブログのサービス「はてなブログ」の会社のはてなの過去1ヶ月のデータを集めてみました。

次に、終値をグラフにしてみました。

このような基本的なデータでさえも初心者なのでバタバタします。けど、yfinanceとPythonだったら簡単にできました。

コード

最初にyfinanceをインポートします。

import yfinance as yf

次に、Tickerではてな証券コードを指定して、過去1ヶ月のデータを取得します。

ticker=yf.Ticker('3930.T')
data=ticker.history(period='1mo')
data.head()

そして、表にします。

data['Close'].plot(title='HATENA')

最後にCSVにして保存します。

data.to_csv('hatena_ticker.csv',index=True)
print('csv saved')

AtCoder ABC402の振り返り

AtCoder ABC402の振り返り(記録)です。

Tokio Marine & Nichido Fire Insurance Programming Contest 2025 (AtCoder Beginner Contest 402) - AtCoder

今回もやっぱりA問題とB問題のみでした。しかし、最近はC問題を考えることができる体力がついてきた気がする。前はC問題ができないくらい最初の2問で体力がなくなってしまってました。少しは成長してそうです。

A - CBC

https://atcoder.jp/contests/abc402/tasks/abc402_a

S = input()
a = []
for s in S:
    if s.isupper():
        a.append(s)
print(*a, sep="")

B - Restaurant Queue

https://atcoder.jp/contests/abc402/tasks/abc402_b

Q = int(input())

Gyoretsu = []
Toridashi = []

for _ in range(Q):
    n = list(map(int, input().split()))
    if n[0] == 1:
        Gyoretsu.append(n[1])
    elif n[0] == 2:
        Toridashi.append(Gyoretsu[0])
        Gyoretsu.pop(0)
        
for t in Toridashi:
    print(t)

AtCoder ABC401の振り返り

AtCoder ABC401の振り返り(記録)です。

AtCoder Beginner Contest 401 - AtCoder

今回もやっぱり最初の2問しか解けませんでした。C問題は難しいと思ったのですが、解説をみたらシンプルでした。むずかしく考えすぎてしまった。C問題が解ける日はまだまだ遠そうです。

A - Status Code

https://atcoder.jp/contests/abc401/tasks/abc401_a

S = int(input())
if S >= 200 and S <= 299:
    print("Success")
else:
    print("Failure")

B - Unauthorized

https://atcoder.jp/contests/abc401/tasks/abc401_b

N = int(input())
S = []
for i in range(N):
    S.append(str(input()))

cnt = 0
i = 0
sts = False
while i < N:
    if S[i] == "login":
        sts = True
    elif S[i] == "logout":
        sts = False

    if not sts:
        if S[i] == "private":
            cnt += 1
    i += 1

print(cnt)