About

【R】テキストマイニングを利用して、東京ちんこ倶楽部と暇な女子大生を分析する

Rでツイッターのビッグデータを分析する




Rでツイッターのビッグデータを利用し、テキストマイニングしてみました。とはいっても、本当に基礎の基礎で、あるユーザーのツイートを3000個ほど取得し、どのような言葉をよく使っているかを調べるという企画です。


最終的な目標としては


・好きなアカウントの独特な話口を分析し
・そのアカウントっぽい言葉を特定すること


となります。

今回選ぶアカウントは、①東京ちんこ倶楽部さんと②暇な女子大生



さて、今回僕が選んだアカウントは、僕が個人的に好きなアカウントです。
まず、①東京ちんこ倶楽部さんです。日本のブラック企業皮肉力が高いアカウントで、2年ほど前からファンです。




ちなみにnavarがたっているので見るとこんな感じ。



さて、次は②暇な女子大生です。
下のツイートのように、


・高学歴の大学生、社会人を相手に
・Tinderという出会い系サイトを利用し
・喰いまくって性生活を暴露する


というアカウントです。



処理の流れ


処理の流れとしては、


1. Twitter APIに登録
2. Twitterのアクセストークンなどを取得
3. TwitteRをインストール
4. MeCab(日本語の形態素分析ツール)のインストール
5. ツイートの取得
6. Wordcloudで出力


という感じです。それでは早速。
まず初めに、https://apps.twitter.com/からTwitter ID、アクセストークンを取得します。なお事前に電話番号を取得しないとアプリを作成できないので登録しておくこと。
そして上記サイトから、以下4点を確認し、メモっておいてください。


1. consumerKey
2. consumerSecret
3. accsssToken
4. accessSecret

RでTwitter APIを利用


次にTwitterでログインするためのパッケージをインストールします。


install.packages("twitteR")
library(twitteR)
install.packages("ROuth")
library(ROAuth)


そして各種キーをセットし認証します。


consumerKey <- "Consumer Key (API Key)を入力"
consumerSecret <- "Consumer Secret (API Secret)を入力"
accessToken <- "Access Tokenを入力"
accessSecret <- "Access Token Secretを入力"
setup_twitter_oauth(consumerKey, consumerSecret, accessToken, accessSecret)


これでログインできます。さて、早速東京ちんこ倶楽部氏のツイートを取得します。


TwitteRの利用



#過去2000件のツイートを分析
tweets <- userTimeline("tokyoxxxclub", n = 2000)


#データフレームに変換し、テキスト部分だけを指定しツイートを取得

tweets <- twListToDF(tweets) #これでデータフレームにできます
tweets <- tweets$text #テキストデータだけ取得します

#テキスト変換

write.table(tweets,"tweets.txt") #一時的にテキストデータに保存します

RMeCab, dplyr, wordcloud, RColorBrewer, tm をまとめてインストール


install.packages("RMeCab", repos = "http://rmecab.jp/R")
library(RMeCab)

install.packages("dplyr")
library(dplyr)

install.packages("workcloud")
library(wordcloud)

install.packages("RColorBrewer")
library( RColorBrewer )

install.packages("tm", dependencies=TRUE)
library(tm)

日本語テキストの解析用に、パッケージ「RMeCab」を呼び出し、名刺、形容詞、動詞のみ抽出


tweetsFrq <- RMeCabFreq("tweets.txt")
tweetsFrq2 <- tweetsFrq %>% filter(Freq>10&Freq<400, Info1 %in% c("名詞"), Info2 != "数")

#URLや@などを削除

tweetsFrq2  <- gsub("^RT\\s@[0-9a-zA-Z\\._]*:\\s+","",tweetsFrq2 )
tweetsFrq2   <- gsub("https?://t.co/[0-9a-zA-Z\\._]*","",tweetsFrq2 )

wordcloud上に表示


wordcloud(tweetsFrq$Term,tweetsFrq$Freq,random.order=FALSE,
  color=rainbow(5),random.color=FALSE,scale=c(3,1),min.freq=10)



さて、ここまでの流れで、東京ちんこ倶楽部氏のツイートで頻繁につぶやかれている言葉を確認できました。





といった感じに、単語を見ると「そういえばこのアカウントこの言葉めっちゃつぶやいているなぁ」なんて言葉が出てきます。


同じ処理で暇な女子大生を分析してみたところ.....


といった言葉が出現しました。おおよそアカウントに関係する言葉が出てきたと思われます。


東京ちんこ倶楽部語、暇な女子大生語で話したい人は、下の画像をみて勉強してみてください。(1枚目が東京ちんこ倶楽部、2枚目が暇な女子大生。ちんぽの利用度が非常に多いことがわかります。)







参考


Twitter Data Analysis with R - RDataMining.com: R and Data Mining http://www.rdatamining.com/docs/twitter-analysis-with-r

Rでワードクラウドを作成してみる - Qiita
http://qiita.com/SoNa/items/dfd435c4ebee29e100f7

RでTwitterのデータを分析するための準備(2015年6月現在のやり方) - StatsBeginner: 初学者の統計学習ノート
http://www.statsbeginner.net/entry/2015/06/20/094620

TwitterのデータをRであれこれ
https://www.slideshare.net/abicky/twitterr

テキストマイニングはじめました〜その11〜 - Rを通じて統計学を学ぶ備忘録ブログ http://sugisugirrr.hatenablog.com/entry/2016/06/26/%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%83%9E%E3%82%A4%E3%83%8B%E3%83%B3%E3%82%B0%E3%80%9C%E3%81%9D%E3%81%AE%EF%BC%91%EF%BC%91%E3%80%9C


スポンサーリンク

K-meansでクラスタ分析をRでやってみる 【データサイエンス養成読本】

2017-08-21

今日はK-meansまでRでやってみる。
データサイエンティスト養成読本の続きからですね。




K-means (P40~)


そもそもK-meansとは何かよくわからなかったので、しらべてみた。

・非階層型クラスタリングのアルゴリズム
・最適化問題を解くアルゴリズム

らしい。



さっそくコードを書いてみると。とりあえずk-meansでクラスタに分けて、プロットするまでやってみる。


#k-means
data <- state.x77 #州データを代入
pca <- prcomp(data[,1:6], scale = T)
nrow(data) #列の数を算出
head(data) #うえから6つのデータを取得
km <- kmeans(scale(data[,1:6]),3) #3つにクラスタがわかれることを想定
#主成分分析の結果にクラスターの情報を付与する
df <- data.frame(pca$x)
df$name <- rownames(df)
df$cluster <- as.factor(km$cluster)
#描画
ggplot(df, aes(x=PC1,y=PC2,label=name,col=cluster)) + geom_text() + theme_bw(16)
そうすると結果がこんな感じになる。


さて、これを今度はレーダーチャートに変換する。


#レーダーチャート
install.packages("fmsb")
library(fmsb)
df <- as.data.frame(scale(km$centers))
dfmax <- apply(df,2,max) + 1
dfmin <- apply(df,2,min) - 1
df <- rbind(dfmax,dfmin,df)
#レーダーチャートを描画
radarchart(df,seg=5,plty=1,pcol=rainbow(3))
legend("topright",legend=1:3,col=rainbow(3),lty=1)
結果的にはこんな感じになる。








スポンサーリンク

主成分分析までをRで書いてみる(データサイエンス養成読本)

2017/08/20
今日もちびちびデータサイエンティスト養成読本を進めながらRを学習しました。




基本的には写経ですが、気になったところも少し深堀して調べてみました。

データフレームの基本操作 P30~


#csvが存在するディレクトリを選択
setwd("C:/Users/Dai/Desktop")


#csvデータの読み込み
body.data <- read.table("body_sample.csv", header = T)
head(body.data)


#データフレームの基本操作

body.data[, 2] #列番号を指定して取得
body.data[, c[1,3]] #複数の列番号を指定して取得
body.data[, "weight"] #列名で取得
body.data$weight #列名で取得
body.data[, c("height","weight")]

body.data[body.data$gender == "F"] #条件にあった行だけ取り出す
body.data[order(body.data$height)] #身長順にソート
body.data[order(body.data$height, decreasing = T )] #身長順にソート

#要約統計量

summary(body.data)

#標準偏差と不偏分散

sd(body.data$height)
val(body.data$weight)

ggplot2のインストールで詰まる


ggplotをインストールする際に、いろいろエラーが発生してしまいました。そこまでの軌跡はこちらにまとめておきました。

セキュリティの問題だったので、カスペルスキーをいったん解除したら治りましたとさ。


ヒストグラムを書いてみよう



#ヒストグラムの描画

ggplot(data, aes(x=height)) + geom_histogram() + theme_bw(16) + ylab("count")
ggplot(data, aes(x=height, fill = gender)) + geom_histogram() + theme_bw(16) + ylab("count")

#身長データの箱ひげ図

ggplot(data, aes(x = gender, y=height, fill = gender)) + geom_boxplot() + theme_bw(16)



#(番外編) 散布図を作成する
ggplot(data, aes(x = height, y=height, fill = gender)) + geom_point() + theme_bw(16)

#(番外編) 散布図を作成し、genderごとに色を分ける
ggplot(data, aes(x = height, y = weight, fill = gender)) + geom_point(aes(colour=gender)) #+ theme_bw(16)

#(番外編)X軸とY軸に名前をつけ、さらにタイトルにまで名前を付ける

ggplot(data, aes(x = height, y = weight, fill = gender)) + geom_point(aes(colour=gender)) + ggtitle("Weight and Height in Sex Difference") + xlab("Height") + ylab("Height")




#回帰直線を追加

ggplot(data, aes(x = height, y = weight, fill = gender)) + geom_point(aes(colour=gender)) + ggtitle("Weight and Height in Sex Difference") + xlab("Height") + ylab("Height") + geom_smooth(method = "lm")

#相関係数を算出(全体)

cor(data$height,data$weight)

#相関係数を算出(男性)
m <- data[data$gender == "M",]
cor(m$height, m$weight)

#相関係数を算出(女性)
f <- data[data$gender == "F",]
cor(m$height, m$weight)

多変量解析をやってみよう(P34~)



#仮想データの読み込み

amount <- read.csv("amount1.csv")

#上位6県を表示

head(amount)

#数値要約

summary(amount)

#散布図の描画

ggplot(amount, aes(x = invest, y = amount)) + geom_point() + theme_bw(16)+ggtitle("多変量解析")

#線形回帰分析(liner models)

data <- amount
lm <- lm(amount^invest, data=data)
summary(lm)

#逓減型回帰モデル

ggplot(amount, aes(x = invest, y = amount)) + geom_point() + theme_bw(16)+ggtitle("多変量解析") + geom_smooth(method = "lm", formula = y ~ log(x))


このへんよく理解できなかったなぁ。

P36

#ロジスティック回帰モデル

z <- data.frame(Titanic)
head(z)



#データの整形

data <- data.frame(
     Class = rep(z$Class, z$Freq),
     Sex = rep(z$Sex, z$Freq),
     Age = rep(z$Age, z$Freq),
     Survived = rep(z$Survived, z$Freq))

nrow(data) #データの個数を調べる

#モデルの構築

logit <- glm(Survived~., data = data, family = binomial)
summary(logit)

#epicalcパッケージの読み込みとオッズ比の計算

install.packages("devtools")
library(devtools)
install_github("cran/epicalc")
library(epicalc)

#オッズ比の算出
logistic.display(logit,simplified  =T)

#決定木モデルの構築

install.packages("partykit")
library(rpart)
library(partykit)

#決定木モデルの構築

rp <- rpart(Survived~., data=data )

#決定木の描画

plot(as.party(rp), tp_args=T)





library(rpart.plot)
prp(rp, type=2, extra=101, nn=TRUE, fallen.leaves=TRUE, faclen=0, varlen=0, shadow.col="grey", branch.lty=2, cex = 0.9, split.cex=1.3, under.cex = 1.0)

#主成分分析 Population Income Illiteracy Life Exp Murder HS Grad Frost   Area

data <- state.x77
nrow(data)
pca <- prcomp(data[,1:6], scale = T)
biplot(pca)




今日はここまででした!



スポンサーリンク

> Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) there is no package called ‘Rcpp’

やりたいこと


・R Studioにggplot2をインストールし、呼び出す
・library(ggplot2)を実行する

現状


・gglot2をインストールし、library(ggplot2)を実行すると、以下のエラーが起こる

> library(ggplot2)
Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]])
there is no package called ‘Rcpp’


打開策


ネットでいろいろ調べてみたら、どうやらセキュリティソフトが邪魔してうまくいかなかったみたい。そこでカスペルスキーの保護をいったん削除して実行してみる。



結果成功した。




スポンサーリンク

教養とは、「知識量」x「転移力」である

ふと教養について考えてみた。



教養とは、「知識の量」ではない


教養を知識の量だと思っている人がいるが、個人的にはそれは必要条件ではあるが、十分条件ではないと思っている。


そしてそれは、旧来の知識偏重主義の日本教育がもたらした、学習観に基づいていると思う。こういう人たちは、


・大学の授業に出る義務があって、義務であるから勉強するような人。「大学の授業に出なければいけない!サボるなんてありえない!」という人

・会社からキャリアパスを与えられ、そのキャリアパスを達成するためにTOEICの点数が必要で、「昇進のために必要だ!」という人。

・世の中で流行っている本を探して、「やばい流行だから読まなきゃ!」と言って読んでいる人

である。つまり、課された知識をできるだけ吸収することが、教養だと思っている。


教養とは、「知識量」 x「転移力」だと思う


しかし僕は教養とは「知識量」x「転移力」だと思っている。


転移能力とは、「異なる複数の学習領域を、シナプスのようにつなぎ合わせる能力」である。そして、さまざまな知識を頭の中にいれ(知識量)、それを結び付けて新しい視点を手に入れられる力こそが教養である。世の中のクリエイティブな偉人(スティーブジョブズ)は、無関係と思われるさまざまな知識を転移することで、大きな発明を残してきた。


転移力には、大きな問題意識と、客観性が必要である


その転移力を磨くために必要であるのは、問題意識と、客観性だ。


つまり、ある一つの問題意識、もしくは関心をもとに、さまざまな知識を整理する。そして、その軸をもとに様々な知識をつなぎ合わせるのだ。


その際、自分の問題意識が強すぎて、主観的になりすぎると、「この問題はこうに違いない!」と視野を狭めてしまう。そうではなくて、ある問題に対してできるだけ客観的な視点で、さまざまな要因を鳥瞰する誠実さも大事になる。


教養とは、知識を受動的に蓄える作業ではなく、蓄えた知識をもとに何かを生み出す積極的な姿勢によって、表現できるものなのではないだろうか。

スポンサーリンク

なぜ「夢」を持つことが必要なのか



なぜ夢を持つことが必要なのか。今日はたまたま配属発表があった後、友達と飯を食べてて考えたことをまとめてみた。


夢を持つことというのは、覚悟を決めて人生にある一つの仮説を持つことだと思っている。「こうすれば自分の人生はよくなる」という、ある一時点の自分自身の作り出した仮説だ。当たっているか外れているかは今の時点ではわからない。なぜならそれはその後の経験でしか検証できず、その検証を通じて、人生は軌道修正していくものだと思うからだ。


ところで、人生に夢(仮説)なんて持たなくてよいという人もいる。よく、「どの部署に配属されたいか、何がしたいか、そんなこと考えても仕方ない」という人がいる。なぜなら「仕事なんてやってみなければ分からないし、今の時点で答えを持つことは無意味だ」と考えているからだ。


この考え方は部分的に正しいと思う。すなわち「人生でやりたいこと(=夢、仮説)が、本当に人生でやりたいことなのかどうかはやってみないかぎり、それが本当にそうかどうか検証しえないから、夢を持っても仕方ない。」ということなのだ。だから夢を持つこと自体無意味だと言っているのだと思う。


でも僕は違うと思う。それは仮説なき検証ができないように、夢なき選択も、夢を検証できないのだ。何も軸となるものがないまま、実戦に出されても、すべての経験は検証のための道具になりえないのだ。検証すべき仮説がないから


やりたいことが不明確だと、どこも希望してないのに配属してもらった部署に対して根拠のない不満を言うことになる。「なんとなくいい、なんとなく悪い」と思ってるだけ。で、自分の中に言語化された仮説がないから、その不平の正体も明確にできず、文句を言うだけになってしまうのだ。特に大学生活からの社会人の移行段階で特に社会の苦しさなど知らず、さらに人間は不平不満のほうが認知しやすいようにできているから、自分の中の仮説がないと、悪いところばかり目がいくようになってしまうようになるのであろう。


一方志望動機が明確で、やりたいことがある場合だと、やってみて「これだ!」と思えば仮説検証大成功なわけだし、仮に思い通りにならなかったり、違和感を感じたとしても「これは違うぞ!」ということがわかるうえで仮説検証が成功なのだ。仮説とずれていたとしても、少なくともどこがどう違うかがわかる点で、夢なき=仮説なき人よりも得するのだ。つまりどちらにしても夢=仮説を持たなければ、何事も検証しえないのだ


だから、仮に志望通りにならなかったとしても、自分のやりたいことを明確に、はらをくくって人生の節目で仮説を立てること、これってとても大事なのだと思う。こう考えてること自体も僕の出した仮説なんだけど、2年後くらいにちゃんとドヤガオで仮説が検証できるよう頑張りたい。(これで2年後解雇されてたらとてもオチとしては面白いが)

スポンサーリンク

【新入社員必見】コマンドラインを0から学ぶカリキュラムまとめ

LINUXとは何か



3分間で人に説明できるようになるUnixとLinuxの違い
https://eng-entrance.com/unix_linux




LINUXコマンドで特に重要なもの



2時間でマスター!Linux/Unixコマンドの使い方超入門 | 侍エンジニア塾ブログ | プログラミング入門者向け学習情報サイト
http://www.sejuku.net/blog/2643





実際にコマンドラインを操作する



Command Line | プログラミングの入門なら基礎から学べるProgate[プロゲート] https://prog-8.com/languages/commandline



スポンサーリンク

【新入社員必見!!!】Git初心者が0から学べるチュートリアルサイトまとめ

Gitで、共同作業するうえで必要な学習ができるサイトをまとめてみた




gitを学習するにあたって、フェーズに分けて学習サイトを分類し、どこまで対応しているのかを明確にしてみます。実際に運用できるレベルではないけれど、いざコマンドを言われたときに、それが何の意味をなしていて、何のために使うのかを理解できていることが目標となります。内容としては

1. Gitを知らない人がGitの概要についてわかること

2. Gitのadd, commit, pushあたりのコマンドを意味を理解していること

3. Gitのbranch, merge, pullあたりの知識を理解し、共同開発で使うコマンドとそれを使うシチュエーションについて理解していること


となります。

1. 【初心者】Gitを知らない人


そもそもGitとは何か。なんのために使うのか。誰が使うのか。どういうシチュエーションで使うかわからない場合は、以下のサイトがおすすめです。「なるほどな」くらいで理解しておいてください。(実際に後のページに行くにつれて利用パターンとそれに応ずるメリットがわかるようになります)


【絶対理解できる】Gitとは?特徴やできることまとめ! | 侍エンジニア塾ブログ | プログラミング入門者向け学習情報サイト 


Gitを使ったバージョン管理【Gitの基本】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 


2. 初級編【add, commit, push】


まずはサルでもわかるGit入門を読んで全体の概要を理解した後、dotinstallの動画を見つて、どんな流れなのかを確認し、コードを移す(写経)ことで学習するのがよいと思います。



Gitのインストール【チュートリアル1 Gitの基本】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/intro/intro2_1.html

初期設定【チュートリアル1 Gitの基本】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 

新しいリポジトリを作成する【チュートリアル1 Gitの基本】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/intro/intro2_3.html

ファイルをコミットする【チュートリアル1 Gitの基本】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/intro/intro2_4.html


そんで実際にドットインストールで動画を見ながらコードをうつすとわかり易いと思います。



#01 gitとは何か? | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6701


#02 バージョン管理の流れを理解しよう | git入門 - プログラミングならドットインストール 


#03 gitの設定をしよう | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6703


#04 初めてのコミットをしてみよう | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6704


#05 gitのログを見てみよう | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6705


#06 現在の状態を把握しよう | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6706


#07 差分を確認してみよう | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6707


#08 gitでのファイル操作について | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6708


#09 git管理に含めない設定について | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6709


#10 直前のコミットを変更する | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6710


#11 過去のバージョンに戻ってみよう (1) | git入門 - プログラミングならドットインストール 


#12 過去のバージョンに戻ってみよう (2) | git入門 - プログラミングならドットインストール 


3.【中級者】branch, merge, tag, 


同じようにサルでもわかるGit入門というサイトから、ドットインストールを見ながらコードを写経という流れが理解しやすいと思います。



ブランチとは【ブランチ】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 


ブランチの運用【ブランチ】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 

ブランチの切り替え【ブランチ】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 

ブランチの統合【ブランチ】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 


トピックブランチと統合ブランチでの運用例【ブランチ】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup1_5.html


0. 前準備【チュートリアル1 ブランチを使ってみよう】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup2_1.html


1. ブランチを作成する【チュートリアル1 ブランチを使ってみよう】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup2_2.html

2. ブランチを切り替える【チュートリアル1 ブランチを使ってみよう】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup2_3.html

3. ブランチをマージする【チュートリアル1 ブランチを使ってみよう】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup2_4.html

4. ブランチを削除する【チュートリアル1 ブランチを使ってみよう】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup2_5.html

5. 並行で作業する【チュートリアル1 ブランチを使ってみよう】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup2_6.html

6. マージでの衝突を解決する【チュートリアル1 ブランチを使ってみよう】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup2_7.html


7. rebaseでマージする【チュートリアル1 ブランチを使ってみよう】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup2_8.html

pull【リモートリポジトリ】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 

fetch【リモートリポジトリ】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 

push【リモートリポジトリ】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 

タグ | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 

0. 前準備【チュートリアル2 タグを使ってみよう!】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup5_1.html

1. 軽量タグを追加する【チュートリアル2 タグを使ってみよう!】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup5_2.html

2. 注釈付きタグを追加する【チュートリアル2 タグを使ってみよう!】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup5_3.html

3. タグを削除する【チュートリアル2 タグを使ってみよう!】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup5_4.html

直前のコミットを修正する【コミットの書き換え】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup6_1.html

過去のコミットを打ち消す【コミットの書き換え】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup6_2.html

コミットを捨てる【コミットの書き換え】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 

コミットを抜き取る【コミットの書き換え】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 

コミットの履歴を書き換える【コミットの書き換え】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup6_5.html

ブランチ上のコミットを一つにまとめてマージする【コミットの書き換え】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup6_6.html

1. commit --amend【チュートリアル3 コミットを書き換えよう!】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup7_1.html

2. revert【チュートリアル3 コミットを書き換えよう!】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup7_2.html

3. reset【チュートリアル3 コミットを書き換えよう!】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup7_3.html

4. cherry-pick【チュートリアル3 コミットを書き換えよう!】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup7_4.html

5. rebase -i でコミットをまとめる【チュートリアル3 コミットを書き換えよう!】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 

6. rebase -i でコミットを修正する【チュートリアル3 コミットを書き換えよう!】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ 

7. merge --squash【チュートリアル3 コミットを書き換えよう!】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ http://www.backlog.jp/git-guide/stepup/stepup7_7.html


ここからがドットインストールのビデオですね。実際にターミナル上でやっているのが見れます。写経してみてください。




#13 ブランチを使ってみよう | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6713


#14 ブランチをマージしてみよう | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6714


#15 マージの衝突を解決してみよう (1) | git入門 - プログラミングならドットインストール 

#16 マージの衝突を解決してみよう (2) | git入門 - プログラミングならドットインストール 

#17 タグを使ってみよう | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6717

#18 エイリアスを使ってみよう | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6718

#19 はじめての共同作業 | git入門 - プログラミングならドットインストール http://dotinstall.com/lessons/basic_git/6719

#20 共有リポジトリにpushしてみよう | git入門 - プログラミングならドットインストール 

#21 リポジトリの内容を共有してみよう | git入門 - プログラミングならドットインストール 



Gitによるバージョン管理
Gitによるバージョン管理
posted with amazlet at 17.08.11
オーム社 (2017-07-15)
売り上げランキング: 140,156

スポンサーリンク

『善人ほど悪い奴はいない』 中島義道


2017-08-09


中学生のころから大ファンの哲学者中島義道さんの「善人ほど悪いやつはいない」を読んでみました。ちなみに中島さんのプロフィールはこちら。


中島義道(なかじま・よしみち) 1946年、福岡県生まれ。前電気通信大学教授。現在は私塾「哲学塾カント」を主宰。東京大学教養学部並びに法学部を卒業。77年、東京大学大学院人文科学研究科修士課程修了。83年、ウィーン大学基礎総合学部哲学科修了。哲学博士。専門は時間論、自我論。著書に『うるさい日本の私』『孤独について 生きるのが困難な人々へ』『醜い日本の私』『ひとを〈嫌う〉ということ』『生きにくい… 私は哲学病。』『ひとを愛することができない マイナスのナルシスの告白』『どうせ死んでしまうのに、なぜいま死んではいけないのか?』『孤独な少年の部屋』『ウィーン家族』など話題作多数

特に響いたところを激選してまとめます。



善人ほど悪い奴はいない ニーチェの人間学 (角川oneテーマ21)
KADOKAWA / 角川書店 (2014-04-21)
売り上げランキング: 18,814

善良な弱者とは、「弱者の特権」を要求する人



弱者とは、自分が弱いことを骨の髄まで自覚しているが、それに自責の念を覚えるのでもなく、むしろ自分が弱いことを全身で「正当化」する人のことである


「私(俺)は弱いから」という理由を、臆面もなく前面に持ち出して、それが相手を説得し自分を防衛する正当な理由だと信じている人、自分が社会的に弱い立場にいることに負い目を感ずることがまるでなく、それから脱する何の努力もせずに、むしろ自分の弱さを当然のごとくに持ち出し、「弱者の特権」を要求する人のことである


自分(弱者)は理不尽に苦しみを背負っている被害者であるゆえに「正しい」のだ。そして、生まれつきの資質に恵まれたもの、結果として報われた者は、その苦しみを背負っていないがゆえに「正しくない」のだ。こうして、自分が弱いことを全身で正当化する弱者、すなわち「善良な弱者」が完成されるのである


彼らは自分が善良だと信じているが、そのじつ、彼らの前足が麻痺しているだけのことなのだ。弱者は、攻撃する「前足」が弱いがゆえにこっそり「善良」と裏で手を結ぶ。そのことによって、善良な自分の正しさを揺るぎないものとして確信する。いや、それに留まらない。その裏の論理を高く掲げて、強者を「強いがゆえに悪い」と決め込むのだ。


弱者は「弱さ」を生きる理由にする。弱者は「私(俺)は弱いからしかたない」という原理に初めはこそこそと、だが次第に大っぴらにしがみついていく。しかも、「しかたない」と呟きながら、けっして自己責任を認めない。  だが、──ここがとりわけ重要なのであるが──、俺(私)は弱者なんだから、みんなが理解していることが理解できなくとも、思わぬ過失をして大損失しても「しかたない」とはならない。そうではなく、弱者の理解力に合わせて、弱者がいかなる損失も被らないような「思いやりのある」社会を実現しなければならないのだ。つまり、自分ら弱者に社会全体が「合わせるべきだ!」と大声で訴えるのである


善良な弱者は悪である



弱者は悪いことをしない 。善良な弱者は社会の裁きを絶対的に恐れ、その裏返しとして裁かれた者を絶対的に侮蔑し排除する。彼らは社会制度に対して疑うということがまるでない。いや、そうではない。いったん自分が制度の被害者になれば、「制度の不備」を鉦や太鼓でわめき立てる


善良な弱者が犯罪に手を染めないのは、彼らの良心が痛むからではない。彼らは間違ってそう思い込んでいるが、彼らには厳密な意味で良心などはない。良心とは、社会的掟と自分自身の抱く信念とのあいだがずれるときに鮮明化するが、彼(女)にはこうしたズレは金輪際生じないからである。


善人が悪事をなさないのは、それが「悪い」からではない。ひとえに社会から抹殺されたくないから、つまり悪をするだけの勇気がないからである。社会に抵抗してひとりで生きていけるほど強くないからである。  それにもかかわらず、彼らは「良心がとがめるゆえに悪いことをしない」のだと思い込んでいる。善人の最大の罪は、鈍感であること。つまり、自分自身をよく見ないこと、考えないこと、感じないことである


善人とは弱者であるゆえに自分は善良であると思い込んでいる人のこと、言い換えれば、弱者であるゆえの「害悪」(ああ、それは何という害悪であろう!)をまったく自覚しない人のことである


なぜ世の弱者は、自分の中の弱さを変えようとしないのだろうか? 変えようとしないばかりか、それを誇りさえするのであろうか? 思うに、弱者は──狡く怠惰なことに──どこまでもラクとトクを求めるからであり、そのほうが自分の中の弱さを変えるよりずっとラクでトクだからである


ヒトラーは大衆=弱者の心理を知り尽くしていた。彼は、大衆の心を、すなわちその愚かさ、単純さ、飽きっぽさをつかんだがゆえに、権力を掌握できたのである

宣伝はすべて大衆的であるべきであり、その知的水準は、宣伝が目ざすべきものの中で最低級のものがわかる程度に調整すべきである。それゆえ、獲得すべき大衆の人数が多くなればなるほど、純粋の知的高度はますます低くしなければならない。(『わが闘争』 平野一郎訳、角川文庫)  


善人は好意を振り撒く


善人はあたりかまわず「好意」を振り撒く。それは、じつは自分を守るためである。それはそれぞれの相手の価値観や人生観を研究しての好意ではなく、「すべての人に喜ばれる」つもりの好意であるから、粗っぽい押し付けがましい好意であり、「すべての人に喜ばれるに決まっている」という思いに基づく傲慢至極な好意である


とくに企業(私に関係するところでは、出版社、眼鏡店、リフォーム会社など)からの膨大な年賀状(しかも、私の宛て名は紙を貼り付けただけのもの)は、ただ今年も「あなたを利用して儲けたい」という宣言だけではないか! 絵を買った画家や画廊あるいは音楽会社や劇場からの年賀状は「また買って(来て)ください」という要求だけではないか


善人は、こうしてすべての人に対して反感を持たれないように細心の注意を払う。自分は弱いから、真実を語って身の危険を招き寄せる余裕はないのだ。自分は弱いから、自分を守るだけで精一杯なのである。こうした「論理」を高々と掲げながら、真実を足蹴にすることをものともせずに、その上に居直っているのが善人である


善人は群れをなす



善人は群れをなして権力を握る  善良で弱い者は、たえず胸に不平を抱いている。しかし、その不平を少しでも身の危険のあるところで発散させることはない。積もり積もる不平もまた絶対安全な場所においてのみ表出するのだ


善人は弱いことを自覚しているからこそ、最も卑劣で姑息なやり方で権力を求める。つまり、彼らは「数」に訴えるのである。一人ひとりは弱いが、結束すれば、団結すれば、山をも動かし、巨悪をも打ち倒すことができよう


弱者は、よく社会のルールを守る。なぜなら、彼らが生き抜くには、みずからの欲望を押し殺し、しぶしぶ社会のルールに従うしか術がないからである。だから、彼らは善人になるしかない。善人とは、与えられた社会的ルールに、何の疑いをも持たずに従っている者なのだから。 こうして、彼らはどこまでも品行方正な市民になり、ルール破りの者を、顔をゆがめて激しく断罪する

感想


「善良な弱者は悪である」のヒトラーのくだりとか、これを思い出しました。



善人ほど悪い奴はいない ニーチェの人間学 (角川oneテーマ21)
KADOKAWA / 角川書店 (2014-04-21)
売り上げランキング: 18,814


スポンサーリンク

Rで大数の法則をシミュレーションしてみた

理論的には「大数の法則によって母平均が標本平均とイコールになる」というのが感覚的によくわからなかったので、Rで大数の法則をシミュレーションしてみる。

これら10都道府県にある映画館の合計スクリーン数の平均は「93.8」でした。この「93.8」を47都道府県(=母集団)の平均値(つまり母平均)と見なしてしまおう、とするのが母平均の点推定です。やや強引な感じがしますが、17-2章 大数の法則で学んだ「標本平均の期待値は母平均と一致する」という性質を用いています。(18-2. 母平均の点推定と推定量・推定値 | 統計学の時間 | 統計WEB https://bellcurve.jp/statistics/course/8610.html )

大数の法則とは


Wikipediaによると、大数の法則とは

大数の法則(たいすうのほうそく、英: law of large numbers)は、確率論・統計学における極限定理のひとつで、「経験的確率と理論的確率が一致する」 という、素朴な意味での確率を意味付け、定義付ける法則である。

らしい。試行回数を増やしていくと、標本の確率と母集団の確率が一致するということなんだろう。例えばサイコロで1の目が出る確率は1/6、でも実際6回振ってみたら、1が一回も出てこないということもあり得る。だけど、試行回数を増やせば、理論値である1/6に近づくよね。という話らしい。


シミュレーションしてみる。
いうて教材は母校の授業で使ったものだけど。


Rによる大数の法則のシミュレーション


さて、実際にサイコロの目で大数の法則をシミュレーションしてみる。
おおまかな流れとしてはこんな感じ。


(1) サイコロを振り、1,2,3,4,5,6が出る数を調べる
(2)試行回数を10,100,1000,10000と増やしていく
(3)その時のそれぞれの出る目の確率を計算する


ソースコードはこちら。


1. n = 10 (10回サイコロを振った)の場合。


1 2 3 5 6
2 3 2 1 2

横軸はサイコロの目。縦軸は出現回数。そもそも出てない目すら存在している。


2. n = 100の場合。


 1  2  3  4  5  6
21 15 14 13 20 17



まだかなりギザギザしてる。



3. n = 1000の場合。


  1   2   3   4   5   6
176 160 162 164 165 173


4. n = 10000の場合


   1    2    3    4    5    6
1670 1602 1687 1684 1691 1666




こんな感じで、理論的な確率分布は、標本の数を大きい数にしていくと、理論値に近づくんだね。


補足


sample関数についてはこちらを参照

[R]無作為抽出をするsample関数の使い方 


スポンサーリンク

「とりあえず年上のいうことは聞いておけ」ひろゆき『無敵の思考 ---誰でも得する人になれるコスパ最強のルール21』から

『無敵の思考 ---誰でも得する人になれるコスパ最強のルール21』を読んでみた。




ひろゆき(西村博之)氏の本を読んでみました。ひろゆき氏は2chやニコニコ動画を作ったことでも有名ですね。個人的には堀江貴文氏との対談番組をよく見ているので、ファンです。



西村 博之(にしむら ひろゆき、1976年11月16日 - )はサービス提供をWeb上で1999年5月に開始し日本最多の利用者数を2000年代前半に記録した匿名掲示板・2ちゃんねるの開設者。後に管理者権限を他者に譲渡し実業家に転身。愛称・ひろゆきが2ちゃんねるにて命名される。主に日本のインターネット文化の形成に関する基盤を築いてきたことで知られる。血液型O型。
東京プラス代表取締役、未来検索ブラジルおよびティーケイテクノロジー取締役を務めるほか、ニワンゴの取締役を歴任。(wiki


さて、今回読んだのは「無敵の思考」という本です。いままでひろゆき氏が対談などで言ってきたことを、一冊の本にまとめています。非常に読みやすくて、ひろゆき節がさく裂していてとても面白かったです。その中でも、特に面白かった部分を引用しながら、書評を書いていきたいと思います。


無敵の思考 ――誰でもトクする人になれるコスパ最強のルール21
ひろゆき
大和書房
売り上げランキング: 391



目次


・不幸にならないためのルールを決めておく
・とりあえず年上のいうことは聞いておく
・根拠のない自信を持つ
・モノづくりをする
・「やる目的」から考える




スポンサーリンク

「勉強が趣味」って最強だと思う



いろんな趣味があると思うんです。世の中。今まで楽器、ネトゲ、スポーツやらなんやらいろんなことを趣味にしてきました。この間友人と趣味の話をしていて、ふと「なにが一番長続きして、充実度が高い趣味なんだろうと」と考えてみました。


そして「勉強が趣味って一番最強なんじゃね?」と思ったので勉強を趣味にするメリットについて書いてみたいと思います。ちょっとプチ自慢にはなってしまいますがご了承ください。


1. お金がかからないで遊べる



とにかくお金がかからないんですよ。勉強。確かに参考書とか必要かもしれないですけど、ほとんど初期投資だけなのでたいしてお金かかりません。しかも幸いこの時代はネットに教材がごろごろ落ちてるので、かなり無料で楽しめます。


無料で楽しめる趣味の中で、これだけ自由度が高くて難易度も高いゲームって勉強ぐらいだと思うんですよね。


2. てかむしろ遊んでるのにお金もらえる



で、お金かからないだけじゃなく、間接的にせよ非間接的にせよ楽しんで学んだことがお金に変わります。例えば土日にコード勉強してると、ふと業務につながったりして、遊んでたものがそのまま仕事の役に立ちますし、あと僕はこんな風にブログ書いてますけど、本を読んでまとめるだけでお金が入ったりします。


個人的には好きなことやってるだけでお金が入るのでほんとうに幸せなんです。この趣味。あれですね、学習そのもののプロセスが楽しいし、その結果として得られる学習成果も楽しいし、それがお金になるのも楽しい。ものすごく特典の多い趣味だと思います。


3. 無意味感に苛まれることなく、やってる間も後もずっと楽しい



僕は中高ネトゲ中毒だったんですが、勉強を趣味にしてから更生しました笑


何と言っても、勉強を趣味にしてから大きく変わったのは、やった後に後悔することがないんですよね。


例えば、ネトゲだと12時間ぐらいぶっ通しでやると、半端じゃない虚無感に襲われます。「おれこの時間に何が他にできたんだろう」「俺は今たった一度の人生の12時間を無駄に使った」みたいな。僕はオンラインシューティングゲームばっかりやってたんですけど、どんだけ世界ランキング上位になっても、本質的に意味ないことだと感じてしまって、急にやらなくなってしまいました。


でも勉強って自分にとって常に意味のあることをするわけだから、いくらぶっ通しでやっても後悔がないんですよね。クリアすればクリアするほど充実感に満たされます。しかもクリアすると常に新しい世界が切り開かれているというか。たまんないですね。


よく最近考えるのは、幸福の持続感という概念なのですが、基本的な消費とはやっぱり短期的な快楽なんですよね。確かにたまに行くスキーとかは楽しいし、美味しいご飯たべるのもいいけど、次の日に何も残らないんですよね。


でも、勉強は学習過程も常に楽しいし、学習結果も持続的に自分に幸福感をもたらしてくれるわけで、最強なんですよね。何かを消費するより、何かを作ることの方が多い。ディズニーランドに行けば、その日は楽しく過ごせるかもしれないけど、結局それが終わればただの消費になって終わる。勉強はその勉強しているときと、し終わった後もずっと幸福感が続くから、幸せなわけです。


ちょっと脱線しますが、2ch作ったひろゆき氏が彼の著書『無敵の思考』の中で、「消費しているうちは幸せにはなれない。何かクリエイティブなことをしてはじめて幸せになれる」という持論を語っていましたが、これにはものすごく同意で、勉強はそのクリエイティブなことになるんではないでしょうか。



無敵の思考 ――誰でもトクする人になれるコスパ最強のルール21
ひろゆき
大和書房
売り上げランキング: 563


4.家でも外出先でもどこでもできる



勉強は基本どこでもできます。家でもできるし、カフェでもできる。紙とペン、もしくはパソコンさえあればどこでも遊び場になりますからね。
なんなら友達と一番距離が近いカフェを設定すれば、ほとんど場所を選ばずとも遊べてしまうわけで、勉強というのは本当に楽しい趣味だと思います。放送大学がおじいちゃんおばあちゃんに受ける理由がとてもわかります。家で楽しめてしまいますからね。



ということで、「勉強が趣味」ってとても幸せなんじゃないかなと思って書いてみました。





無敵の思考 ――誰でもトクする人になれるコスパ最強のルール21
ひろゆき
大和書房
売り上げランキング: 563

スポンサーリンク

2017-07-1 ~ 2017-07-31のブログ運営結果報告

7月のブログ運営報告です。

Adsense


 収益は9892円、PV数学は49565PV、クリック率は0.44%でした。
PV数



Amazon


今月は収益分散を狙っていたので、Amazonのアフィリエイト(Amazon Associate)にも挑戦してみました。
結果収益は1138円でした。


Adsense + Amazon Associateで合計 11030円でした。先月の目標の1つは達成できたのでよかったです。不労所得化まではいけてないけど。

http://review-of-my-life.blogspot.jp/2017/06/2017-6-reflection.html?m=1


学び


1. どんなにコンテンツがよくても、タイトルがダメだと全てが無駄になる

2. 採用系の広告単価が高い

3. 本の紹介がバズると、adsenseとamazon associateダブるで儲かる

4. 楽しい記事書かないとやる気なくなる

8月目標


プログラミングに専念したいので、収益化作戦は一旦中止。
とりあえず読んだ本の書評をたくさん書きます。



スポンサーリンク

pythonでsqlite3を利用してデータを挿入する

メモがてら。

Pythonによるスクレイピング・機械学習&開発テクニックから。
sqlite3にデータを挿入するところまで。

import sqlite3

dbpath = 'test.sqlite'
conn = sqlite3.connect(dbpath)

cur = conn.cursor()
cur.executescript("""
/* items 手0ブルがすでにあれば削除する*/
DROP TABLE IF EXISTS items;

/* テーブルの作成*/
CREATE TABLE items(item_id INTEGER PRIMARY KEY, name TEXT UNIQUE, price INTEGER);

/* データを挿入*/
INSERT INTO items(name,price) VALUES ("Apple",800);
INSERT INTO items(name,price) VALUES ("Orange",780);
INSERT INTO items(name,price) VALUES ("Banana",430);

""")

#上記の操作をデータベースに反応させる

conn.commit()

#データを抽出sる

cur = conn.cursor()
cur.execute("SELECT name FROM items")
item_list = cur.fetchall()
print("item_list:",item_list) #配列を返す
#1行ずつ表示

for it in item_list:
    print(it)





sqlite3に次は複数挿入できるまでのコード
"""
* sqlite3に複数の項目を追加する
* slqでWHERE条件で引き出す
"""


import sqlite3

#データベースに接続
filepath = "test2.sqlite"
conn = sqlite3.connect(filepath)

#手0ブルを作成
cur = conn.cursor()
cur.execute("DROP TABLE IF EXISTS items")
cur.execute(""" CREATE TABLE items (
 item_id INTEGER PRIMARY KEY,
 name TEXT,
 price INTEGER)""")
conn.commit()


#単発でデータを挿入
cur = conn.cursor()
cur.execute(
 "INSERT INTO items (name, price) VALUES (?,?)",
 ("Orange", 520))
conn.commit();

#連続でデータを挿入

cur = conn.cursor()
data = [("Mango",770),("Kiwi",400),("Grape",800)]
cur.executemany(
 "INSERT INTO items(name,price) VALUES (?,?)",data
 )
conn.commit()

# 400-700円のデータを抽出して表示

cur = conn.cursor()
price_range = (400,700)
cur.execute(
 "SELECT * FROM items WHERE price >=? AND price<=?",price_range
 )
fr_list = cur.fetchall()
for fr in fr_list:
 print(fr)

スポンサーリンク

メディアのデジタルシフトで変わること『5年後、メディアは稼げるか - Monetize or Die?』(佐々木紀彦)

News Picks編集長の佐々木紀彦さんが2013年に出版された本『5年後、メディアは稼げるか - Monetize or Die?』の書評です。


ちなみに佐々木さんがNews Picksに移籍したのが2012年であり、その翌年に出版されていますが、まさに宣言通りのことをされていて面白いなぁと思いながら読んでしまいました。

メディア企業はデジタル化しないと焼野原になる


すでにUSではデジタル化の波でメディア業界が一度ぼっこぼこにされているみたいですね。そこからいろいろな著名なメディア(New York Times等)がデジタル戦略に一気に移行しているみたいです。

早くウェブ時代の新しい「稼ぎ方」を見いださないと、メディア業界が〝焼け野原〟になる。...(中略)ウェブの大波に襲われた米国では、経営危機に陥るメディア企業が続出。リストラが吹き荒れ、過去12年間に、雇用者数が3割も減ってしまいました

既存のメディアからウェブメディア戦略で移行するのに一番大事なのは、「マネタイズ」

そのためにいちばん大事なのは「稼ぎ」です。多くの人がメシを食えるエコシステムです
いいコンテンツが、それに見合った対価を得られるようなビジネスモデルを創る──そうした起業家的な人材がいなければ、にっちもさっちもいかないのです

メディアのウェブ化で進む大変化① 紙が主役 → デジタルが主役

うん、確かにそうですね。

デジタルが端役から主役に躍り出るのです。「紙を中心にすえ、デジタルにオマケとして取り組む」という今の姿から、「デジタルを起点にして、紙、広告、イベントなどの戦略を考える」という姿へと急速にシフト...

メディアのウェブ化で進む大変化② 文系人材の独壇場 → 理系人材も参入

この辺もすごく納得です。
メディア側は高単価を謳歌することができました。ところが、ネット空間では広告枠(=サイトの数)は無限大。しかも、ベスト&ブライテストが集う巨大テクノロジー企業と競り合わないといけないのです
メディア新世界において、競争力の決め手となるのは、コンテンツの質だけではありません。それと同じぐらい重要なのが、テクノロジーとクリエイティブ、そして、PDCA(計画→実行→評価→改善)を繰り返すスピードです
また、「未来の新聞」とも評され、高い人気を誇るニュースキュレーションサービス「グノシー(Gunosy)」は、東京大学大学院のエンジニアらが開発したものです。メディア新世界ではコンテンツをつくる記者・編集者だけでなく、すごいサービスをつくるテクノロジストたちもスターになるのです
コンテンツの部分ではなく、ユーザーにどう届けるのかということを考えたときに、理系人材はめっちゃくちゃ必要ですね。

大変化③ コンテンツが王様 → コンテンツとデータが王


ここが面白いですね。特に4年後(2017年現在)News Picksが歩んでいるものを見ると、予言した通りのビジネスをやっているなと感じました。おそらくNPでとってるデータは相当面白いものが多いんだろうなぁ。Facebookのユーザーの属性データから、職業、読んでいる連載のデータとか。有料会員にするためには十分すぎるデータが取れているような気がします。

コンテンツこそがみなにとっての王様だったのです。  しかし新世界では、コンテンツを売った「後」が肝心になります。どの記事が読まれたか、どんな属性の読者が読んだのか、どの時間帯に読んだのか、どのページでサイトから離脱したのか──これらのデータを収集・統合・分析し、コンテンツ作成・広告営業・会員戦略などに活かす視点が欠かせません。今、「ビッグデータ」という言葉が流行っていますが、メディア企業こそ、ビッグデータを存分に活かすべきなのです

もはやコンテンツは素人さんからでも十分面白いものが出てくるわけで、そうなるとやっぱり編集が大事になってくるんですかね。コンテンツ X デリバリーでいえば、デリバリーをどれだけ追及できるかが大事になってくるんですかね。

デジタル化以前は、複数の曲がパッケージされたアルバムが主流でしたが、アップルのiTunesの誕生により1曲ずつ音楽を購入するスタイルが定着しました。同様に記事の世界でも、「日経新聞を読む」「東洋経済を読む」というスタイルから、日経新聞のA記者の記事と、東洋経済のB記者の記事と、ブロガーのCさんの記事を読むといった形や、「世界経済」というテーマ別に各媒体の記事を横断的に読むといったスタイルが日常化していきます

新世界でメディア企業に求められるのは、データ分析のプロ(=データサイエンティスト)と、マーケティングのプロです。事実、デジタル戦略の最先端をいく、英フィナンシャル・タイムズ(FT)は、30人からなるデータ分析のチームをつくり、その知見を記事作成、広告営業、会員戦略などにフル活用しています

大変化④ 個人より会社 → 会社より個人


そうですよね。だってどれだけPV稼げたか。どれだけ広告からのコンバージョンが入ったか。全部定量的に評価が決まるわけですから、そう考えるとデジタルメディアの中の人は大変です。責任の所在がはっきりとしすぎてて......

紙の世界を支配するのは、「組織や会社の論理」です。ジャーナリストの大半は、会社に雇われたサラリーマンであり、個人の色を出すことはあまり許されません。
それに対し、デジタルでは「個人のキャラ」がモノをいいます。主観を抑え事実をたんたんと書いた記事よりも、個人の色がにじみ出た記事のほうがよく読まれるのです

あとはウェブメディアをマネタイズできる人材がものすごく価値が上がってくるんでしょう。記事のクオリティしかり、デリバリーの部分が特にデータをもとにマーケティングできる人の価値が上がりそうです。

ただし、すべてのメディア人がデフレに襲われるわけではありません。競争力の高いコンテンツを創れる記者・編集者、新しいマネタイズ法を創れる広告・イベント・営業担当者、優れた技術とセンスを有するエンジニア、芸術性と読みやすさを備えたレイアウトを創るデザイナー、膨大な読者データを収集・統合・分析できるデータサイエンティスト、そして、新時代のメディアの仕組みを創る経営人材などは、引く手あまたとなるでしょう

あと本に少し書いてあったのですが、バズる記事のタイトルにはある程度法則性があるってところも面白かったです。iPad、アップルじゃバズらないけど、iPhoneはバズるとか。人が見たくなるキーワードを、定量的に見れたらめっちゃくちゃ面白そうですね。



5年後、メディアは稼げるか―Monetize or Die ?
東洋経済新報社 (2013-07-22)
売り上げランキング: 17,860

スポンサーリンク

Python MeCabをCloud9上で動かす

Cloud9でインストールしたときにつまったので忘備録


インストール

$ sudo apt-get update
$ sudo apt-get install mecab
$ sudo apt-get install mecab-ipadic-utf8
$ sudo apt-get install -y libc6-dev build-essential
$ sudo apt install python3-setuptools
$ sudo apt-get install libmecab-dev
$ sudo apt-get install libfreetype6-dev libxft-dev
$ sudo pip3 install mecab-python3

実行


#mecab.py 

import MeCab
mecab = MeCab.Tagger("-Ochasen")
malist = mecab.parse("私は5000兆円ほしいと思っています。")
print(malist)


$ python3 mecab.py

私      ワタシ  私      名詞-代名詞-一般
は      ハ      は      助詞-係助詞
5000    5000    5000    名詞-数
兆      チョウ  兆      名詞-数
円      エン    円      名詞-接尾-助数詞
ほしい  ホシイ  ほしい  形容詞-自立     形容詞・イ段    基本形
と      ト      と      助詞-格助詞-引用
思っ    オモッ  思う    動詞-自立       五段・ワ行促音便        連用タ接続
て      テ      て      助詞-接続助詞
い      イ      いる    動詞-非自立     一段    連用形
ます    マス    ます    助動詞  特殊・マス      基本形
。      。      。      記号-句点
EOS

ちなみにこれで学習しています。


スポンサーリンク

スマホで読書しない人生なんて絶対にもったいない!!




紙の書籍も、Kindle Paper Whiteも試したけど、なんだかんだスマホでKindleアプリを入れての読書が一番よい。というかもう普通の書籍に戻れなくなった。


スマホでKindle本を読むメリットはたくさんある。読書の量と質を最大化するための機能が目白押しだ。

①気になった書籍はワンクリックでどこでも一瞬で買え、1分後には読める

ツイッターやソーシャルメディア、友達から面白いと聞いた本は、すぐアマゾンでワンクリックするだけでスマホの中に入り読むことができる。しかもkindleのほうが断然安い。





②どこでも片手で簡単に読める


やっぱり普通の書籍だと、取り出して両手で読まなければいけないから、ちょっとした隙間で読めない。特に満員電車に乗っていると、どうしても読書は憚れる。小さいスマホであれば満員電車でも迷惑をかけずに読むことができる。



もちろんKindle Paper Whiteでもできなくはないけど、スマホのほうがシームレスで好きだ。取り出す動作がいらない。スマホ持ってることが多いから、スマホで完結してくれる点はマジでありがたい。



③気になったら鉛筆なしで簡単にメモをとったりハイライトできる


個人的にはこれが一番ありがたい。僕は本を読むときかならず鉛筆がないとだめだ。本と対話しながら読みたいけど、どうしても場所と空間が限られる。スマホならどこでもメモできるから、最高。


気になったところはKindle アプリからすぐに一覧できるので、後で全体の要約としてみるときも役立つ。


④アプリ上でハイライトしたところを一覧できる

気になったところ、後で読み返したいところをまとめておける。読み終わったらそのハイライトの部分を見れば、ざっくりと思い出すことができるから、理解度が大きく上がる。


⑤本の引用箇所をコピペできるサイトがアマゾンにある

僕はブログをよく書くので、かなりお世話になっている。



さらにいうと、Evernote Webclipperを使っちゃえば、自分の書評を持ち歩けちゃう!

Kindle Paper Whiteと比較してみる



Kindle Paper Whiteもメリットはある。目に優しいところだ。



ただし、僕は目の疲れはブルーライト眼鏡でカバーできるので、そこまでメリットは大きくない。スマホのほうがKindle Paper Whiteよりいいと思う点は、シームレスに利用できるからだ。




まだ利用したことがない人は、ぜひ!iOSでもAndroidでもあるはずです!

スポンサーリンク

実際に就活してみて、大変だったけど学べた10つのこと





就活って、なんかいろいろな御社にお祈りメールもらって、50社くらい受けて落ちまくって、みんなオリジナルリクルートスーツ着て画一的で、・・・・とにかく嫌なものってイマイナスなイメージが強いと思う。


多くの日本人はどこかのタイミングで一度はやるであろう就活。これから就活する人は、先輩のお祈りメールを見たりで、つらそうに見えるかもしれない。


ということで、今回はそんな就活生に希望が少しでも見れるように、就活して学べてよかったことをまとめてみようと思う。

①幸福って相対的なんだと気付けたこと


幸福は一人ひとり全然違うということ。これに気付けたのは一番大きかったと思う。自分の人生において、自分の幸福についてこんだけ考える機会はないだろうし、むしろこういう人生の岐路で死ぬほど人生に考えさせられざるを得ない期間って超大事だと思った。


⑩と一致するけど、結局誰かの幸せなんて自分の幸せに全然関係ないことだし、むしろ自分の幸せがなんだかちゃんとわかってることのほうが今後5-60年間よっぽど大事だと思う。幸せはいたって主観的なものだから。

②お金に対する価値観が変わったこと


僕は大学生の時、お金を取ることが嫌いだった。どうせなら無料にしてしまえばいいやって思うことがいろいろあった。


でも、就活していると、お金の価値観が変わった。お客さんからちゃんとお金になるようなものを提供する価値って、すごく大事なんだなと。それは提供する価値にたいする責任であり、金銭的・精神的報酬であるということ。


就活してて結構見落としてたのは、ビジネスの結果としての価値だ。対価をお客さんから自信をもってもらえるかということだった。これ、最後まで言語化できなかったけど、自分にとってはすごく大事だった。それは何のために働くのかっていうところでものすごくからんでくるから。例え歯車の一部でも、自分の最終的に出している価値は意味があるのか。意味がないことで残業していたらつらいだろうし、モチベーションがわかないだろう


お金にはなるけど、自分にとって価値を感じられないビジネスって結構ある。自分の仕事が、将来働くときに自信もって意味あると思えるかって、結局最終的にお客さんを喜ばせられるか、そしてそれを定量的に測れるものがお金。どうやってお金をもらうのかは
どういう価値を提供したいかってことにつながるから、そこは結構大事だと思った。

③憧れというバイアスを消すことが大事だということ


漠然と「外資行きたい!」とか、「コンサル行きたい!」とか(全部私)思ってても、絶対どこかでボロがでる。なんで?って言われたときに用意してきた説明が切れると何もでないから。スクリプトを用意しておかなくても、自然にやりたいことが話せるようになっていなければ、意味がない。でも漠然とした憧れだと、そんなジャッキー・チェンの酔拳みたいに戦えないのだ。


身も蓋もない話だけど、僕が憧れというバイアスが外れたのは内定してから。コンサルとして働きたいと心から思ってたけど、実は内定してみるとそうでもなかった。もっとほかの重要な価値観に気づくことが多かった。だから内定してみるとわかるかもしれない。憧れなのか、そうじゃないのか。

④行きたくないところにとりあえず内定しようとすることはそんなに意味がないこと


よく、中小企業やベンチャーに練習で受けるって人はいると思う。保険で適当な企業を受けておくってことをする人もいると思う。それ自体、いろいろな会社のことを知るって意味でものすごく大事だと思う。


だけど、とりあえず内定はあんまり意味がなかった。自分にとってとりあえず内定した企業があって、本当に行きたい企業から落ちたとき、とりあえず内定したい企業に行きたいかっていうと否だ。そのときはどうせ行くなら、留年しようと思った。


確かに周りが内定しはじめたときに、内定していない状態は心配になる。これは僕の経験上かなり不安だった。だけど、そんなに行きたくない企業に内定したときに、それが自分の人生の保険になるかといえば否だ。


⑤浪人とか留年とか就活に全然関係ないこと


それで、就職浪人とか、留年とかして心配な人いると思うけど、そんなに関係ない。これは就活してて、かなりの割合で留年組で「ちゃんとやるべきことをやっていた人」はバシバシ受かっていくのを見てきたからだ。


日本人はどうしても単線的なキャリアを描くべきだと思うけど、実際就活ではそこまで関係なかった。だから今積極的な理由で就活浪人や留年(休学)している人は安心してほしい。


ぶっちゃけ留年している一年でプログラミングスクール通って、一個プロダクト作れば、エンジニア採用のどっかは必ず引っかかるだろう。


⓺内定辞退は、蹴った自分も蹴られたほうもつらいこと


これは一番自分自身がやってつらかったことだ。最終面接で不合格になるようにつらかった。僕はなんとなく内定したい企業にスペアのつもりで受けて、結局内定した。そして行きたかった企業に落ちて、内定した企業も辞退した。


人事の人は死ぬほど時間をかけて面接してくれてた。そういう人に、中途半端な気持ちで内定辞退を伝えたとき、電話越しでかなり怒られた。もちろん言えなかった。とりあえずスペアがほしかったから受けたなんて。


多くの時間をかけて、一人ひとりに面接をしている。一人当たりの採用に50-100万円かけている企業に、「なんとなく安心したいから受ける」ということは、⑦で書いたが自分も得しないし、さらにつらいのは多くの企業に迷惑をかけてしまうことだ。

⑦新卒採用はポテンシャル採用。実績なんて関係ないこと。


僕は馬鹿だから、学生時代の経験を実績ベースで話していた。営業成績とか。だけどそんなこと話しても人事の人は興味ない。そりゃそうだ、いくら頑張っても、成果としてお金にならないことなんて大したことないし、責任もない。「私の努力の結果、みんなが楽しく終わりました!」なんて会社で必要ないから。中途採用でやるべきことで、新卒が生意気に語ってもおままごとでしかないのだ。


僕は新卒採用はポテンシャル採用だということを忘れていて、実績の数値ばかり伝えていた。それはどうやって、どういう価値観で、どういう問題意識でやったかを聞いているわけだから。


(一応例外で企業して会社売ろうとしたら内定した化けものの新卒友達がいるが、おそらく実績もそれくらいないときついだろう)


⑧やたら進路に口出してくる人は、あなたの人生に責任を取ってくれないこと


いまでも人のアドバイスと自分の意見のバランスをとるのは難しいけど、これは就活をしてまなんだこと。やたら口出してくる人は、あなたの人生に責任をとってくれない。


あなたのことを思ってこうしろ!と言って失敗しても、もし自分が不幸になったときに責任を取らせられるわけではなく、自分に跳ね返ってくる。「あの時○○がこういったから」と嘆いても、困るのは自分だ。


だから、自分自身の納得解をもつことの方が大事だと思った。


⑨ふられても歩みを止めないこと


会社に振られても(お祈りメールがきても)歩みを止めないこと。これはものすごく大事だった。自分の運命なんて信じたくなるけど、女(男)と一緒。世の中星の数だけ会社(女)(男)はいる。


僕の父は20代のころから売れてるミュージシャンだ。就活で悩んで相談したときに言われた言葉なんだけど、ものすごく刺さった。


「俺はお前に20年間、好きなことを見つけろって言って育ててきた。なんでも好きなことをやらせてきた。でもまだ見つからないんだな。俺は好きなことをやって、お前の年の時には、その辺のサラリーマンの初任給より稼いでた。今好きなことを見つけられないなら、歩みを止めるな。いろんなところを受けてとりあえず答えを作ってみろ」


その通りにした。そうすると、昨日第一志望で最終面接で落ちて、「俺にはこの会社しかなかったんだ」なんて思ってたのに、違う未来が開けていることもある。僕は当初志望していた業界とは全然違うけど、納得解を見つけることができた。


僕みたいにまだ本当にやりたいことが見つかっていなかった人であれば、ふられても歩みを止めちゃいけない。どんなに振られ続けても、最高の女や男は見つかる。こんな風に言うとあれだけど、数打てば当たる。数を打てばやりたいこともクリアになる。


男女と一緒で、いろんな人と付き合えば、それだけ自分の好きな人のポイントがわかる。だけど、付き合ったことないのに「理想の男は」とか話してても意味がない。数を打つことってすごく大事。会社も同じだ。そうすればやりたいことは自然と生まれてくる。

⑩周りと比較しないこと


早く内定した人を見て、落ち込まないこと。いつ内定したかなんて、その年はすごく意味あるだろうけど、入社したらこれっぽちも意味がない。それよりも入社してから納得できるような根拠を自分の中でどれだけちゃんと言語化できるか、そっちのほうがよっぽど大事だった。


これから、いろいろな人がプレッシャーをかけてくると思う。友人、家族、もしくは就活エージェント、人事。だけど焦ったってなにも出てこない。自分がその選択肢をとる理由を、ちゃんと余裕をもって見つけよう。そうすれば働いていても悩みにくくなるはずだ。


就活は苦しかった。苦しかったけど、本当にやってよかった。

スポンサーリンク

あなたはの正義感は、あなたより頭のいい誰かに搾取されているというお話

今日は炎上について考えてみる。

広告モデルは、搾取モデルである


ブログやっていて思うけど、広告モデルの構造を知らない人は炎上記事にすぐ食いつくと思う。裏でどういうビジネスモデルになっているか想像すれば、そういう無駄なことは本当に意味がないということがわかるのに。


逆に炎上記事書いている人は、その記事を書いて、いかに読者から搾取しようかを考えている。無駄に煽ればあおるほど、読者の数は増えるし、拡散する。お金が入る。


広告モデルの本質は、ページビューである。どんなくそ記事でもかまわない。とりあえず見られれば、確率論的に広告にクリックが入る。成果報酬でも、単純なクリックだけでもお金が入る。


だから読んでも何にも得られないような記事でも、何かしらモノ言いたくなるような記事を書けば、読者はクリックしてくれるし、なんならものいうために拡散してくれる。おエージビューは増やせるのだ。つまり、読者は自分の正義感を主張している間に、読者より頭のよい誰かに搾取されている。

あなたの正義感は、あなたより頭のいい誰かに搾取されている


誰かが死んだとか、誰かの汚職とか、自分の人生にこれっぽち関係ないような、そういう記事が世の中に多すぎると思う。だれかの感情と正義感は、それをお金に変換する広告と、それをお金にするライターに搾取されている。


今日も誰かが書いた記事にいっちょ前に批評家気取りになった読者は、その正義感をあなたより頭の良い誰かに搾取されている。


僕はそういう読者を搾取するメディアは、あんまりイケていないと思う。自分もブログをやって、誰かがものいいたくなるような記事をいろいろ書いてきたけど、やっぱりそういう記事ってだれかを傷つけてしまっているのではないかと心配になる。いや、正直あんまりならないけど、そういう記事ってあんまり正攻法ではないと思う。

スポンサーリンク

「やればできる」が隠す意欲間格差とは


「やればできる」が隠す格差について

「やればできる」によって、努力する意欲の格差が見えなくなってると思う。


努力する才能に格差が存在する

努力する才能はかなり環境に依存する。学習効能感(やればできるという感覚)や、学習意欲もかなり家庭に依存するのだ。

「やればできる」によって意欲間格差を隠蔽し、格差を広げている 

そういう前提をすっとばして、富裕層がやればできるというのは、浅はかな気がする....一度でも彼らを見れば、どれだけ無力感や、学習インセンティブが自分たちより圧倒的に不利な環境におかれているかわかると思う。


それなのに、「やればできる」学習資本がない人たちは、おいて行かれる




「やればできる」は努力する学習資本がある人に使うべきで、ない人に使うのは暴力だと思う

これは 貧困層の教育ボランティアやった時もそうだけど、やればできるが通用するのはやってできた経験がある人。貧困層はやればできるはずなのに、自分自身はできないからバカだと思い込んでいる。しかもロールモデルも親が勉強でほとんど成功したことないし、勉強の必要性もそこまで感じていない。

もし彼らのちからになりたいなら、「やればできる」ことを一緒に証明すべきで、「やればできる」と言って見放すことではないと思うなぁ。

そういえば、学力と階層という本がすごく面白かったので、ぜひ!






スポンサーリンク

Read more↓

書評














教育











キャリア

プログラミング・ライフハック

About me


・ 最近The Academic Timesというアカデミック専用メディアを立ち上げました。