0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ポケモンで学ぶデータサイエンス データクリーニング編

Posted at

前回の続き

前回はデータの正規化をメインに行ってきました。
今回はデータのクリーニングがメインです。

データのクリーニング

データのクリーニング(欠損値の処理、異常値の除去など)を行います。また、必要に応じてデータの変換や標準化も行います。

どのような完璧にデータを取ることができていたのか実際に検証しましょう。

空欄の行の処理

空欄の行にはNULLを挿入しました。

取得してきたデータに誤りが存在

オドリドリ、ジガルデといった特殊なフォルムのポケモンは格納されている値の順序に誤りがありました。
それもしっかりと手直ししていきます。

自分で学習してみようという方は頑張ってみてください。

INSERT文の作成

INSERT文は以下のように、EXCELの関数を用いて作成しました。
ほかにもEXCELファイルをそのままSQL SERVERにぶち込めるという操作もあるようですが、私は手作業で行いました。

image.png

INSERTの結果???

データをSQL SERVERぶち込んだところ、日本語がうまく反映されないというエラーが発生しました。
こちらは別記事で考えてみようと思います。

image.png

不具合の解決

文字化けを起こしてたみたいです。
INSERT文の日本語の前にNをつけると解決。
以下サイトを参照しました。

SQLでテーブル作成・データの格納

CREATE DATABASE ポケモン COLLATE Japanese_CI_AS;

create table pokemon(
	id int primary key not null,   -- 主キー
    name nvarchar(50),
	typeId_1 int,
	typeId_2 int,
	featureId_1 int,
	featureId_2 int,
	dreamFeatureId int,
	hp int not null,
	attack int not null,
	deffence int not null,
	specialAttack int not null,
	specialDeffence int not null,
	speed int not null,
	species int not null
);



INSERT INTO pokemon (id,name,typeId_1,typeId_2,featureId_1,featureId_2,dreamFeatureId,hp,attack,defend,specialAttack,specialDeffence,speed,species) VALUES
(1,N'フシギダネ',4,8,65,NULL,34,45,49,49,65,65,45,318),
....,
(909,N'マーシャドー',7,14,101,NULL,NULL,90,125,80,90,90,125,600)

これでINSERT完了です。

image.png

select * from [ポケモンSV].[dbo].[pokemon]

image.png

感想

やっぱり実践してみるといろいろな問題に直面しますね。。。
データのクリーニングに関しては、欠損している値は、ほかのWEBページから参照しました。
私自身がポケモンに対して一定の知識を得ていたため、正確な値を補完することができましたが、一切知識のない現場での仕事を考えると。。。

また、INSERTに関してはそもそもデータを新たに格納するのはSSMSだけでなく、C#でやっていたため、これには苦戦させられました。

次回はやっとデータを使っていじることができそうです。

続く。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?