• Skip to main content
  • Skip to primary sidebar

学習記録

csvのkey,indexを指定して平均を出す

2017年11月29日 by 河副 太智 Leave a Comment

import pandas as pd

df = pd.read_csv(“http://archive.ics.uci.edu/ml/machine-learning-databases/wine/wine.data”, header=None)
df.columns=[“”, “Alcohol”, “Malic acid”, “Ash”, “Alcalinity of ash”, “Magnesium”,”Total phenols”, “Flavanoids”, “Nonflavanoid phenols”, “Proanthocyanins”,”Color intensity”, “Hue”, “OD280/OD315 of diluted wines”, “Proline”]

df[“Nonflavanoid phenols”].mean()

Filed Under: Pandas

fillna欠損値と直前のデータを補完

2017年11月29日 by 河副 太智 Leave a Comment

1
2
 
 

1
2
3
4
5
6
7
8
9
10
import numpy as np
from numpy import nan as NA
import pandas as pd
 
aa = pd.DataFrame(np.random.rand(10,4))
 
#一部のデータNanにする
sample_data_frame.iloc[1,0] = NA
sample_data_frame.iloc[2,2] = NA
sample_data_frame.iloc[5:,3] = NA

 

fillna()を用いると、引数として与えた数をNaNの部分に代入、
この例では0を代入

1
2
sample_data_frame.fillna(0)
 

methodをにffillを指定し、上の値がそのままコピーされる

1
2
<span class="cm-variable">sample_data_frame</span>.<span class="cm-property">fillna</span>(<span class="cm-variable">method</span>=<span class="cm-string">"ffill"</span>)
 

 

1
2
3
4
5
#欠損値処理
df['Fare'] = df['Fare'].fillna(df['Fare'].median())#Fareの平均値を代入
df['Age'] = df['Age'].fillna(df['Age'].median())#Ageの平均値を代入
df['Embarked'] = df['Embarked'].fillna('S')#Embarkedの値はQ,O,Sのどれかなので代表的なSを代入
df=df.dropna(subset=['Age'])#AgeのカラムにNanがある物を削除

 

Filed Under: Numpy, Pandas

dropna() データを欠損させ、その行を削除

2017年11月29日 by 河副 太智 Leave a Comment

1
2
3
4
5
6
7
8
9
10
11
12
<span class="cm-keyword">import</span> <span class="cm-variable">numpy</span> <span class="cm-keyword">as</span> <span class="cm-variable">np</span>
<span class="cm-keyword">from</span> <span class="cm-variable">numpy</span> <span class="cm-keyword">import</span> <span class="cm-variable">nan</span> <span class="cm-keyword">as</span> <span class="cm-variable">NA</span>
<span class="cm-keyword">import</span> <span class="cm-variable">pandas</span> <span class="cm-keyword">as</span> <span class="cm-variable">pd</span>
 
<span class="cm-variable">sample_data_frame</span> = <span class="cm-variable">pd</span>.<span class="cm-property">DataFrame</span>(<span class="cm-variable">np</span>.<span class="cm-property">random</span>.<span class="cm-property">rand</span>(<span class="cm-number">10</span>,<span class="cm-number">4</span>))
 
<span class="cm-comment">#一部のデータをわざと欠損</span>
<span class="cm-variable">sample_data_frame</span>.<span class="cm-property">iloc</span>[<span class="cm-number">1</span>,<span class="cm-number">0</span>] = <span class="cm-variable">NA</span>
 
 
<span class="cm-variable">sample_data_frame</span>
 

 

 

dropnaを用いると、NaNのある行を全て取り除く

1
2
<span class="cm-variable">sample_data_frame</span>.<span class="cm-property">dropna</span>()
 

 

 

 

ペアワイズ削除

1
2
3
<span class="cm-variable">sample_data_frame</span>[[<span class="cm-number">0</span>,<span class="cm-number">1</span>]].<span class="cm-property">dropna</span>()
</code><code class="cm-s-ipython language-python">
 

1
 

1
 

Filed Under: Numpy, Pandas

DataFrame 内部結合 共通データのみ結合

2017年11月29日 by 河副 太智 Leave a Comment

 print(1)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
   amount      fruits  year
0       1       apple  2001
1       4      orange  2002
2       5      banana  2001
3       6  strawberry  2008
4       3   kiwifruit  2006
 
print(2)
       fruits  price  year
0       apple    150  2001
1      orange    120  2002
2      banana    100  2001
3  strawberry    250  2008
4       mango   3000  2007
 
 
<span role="presentation"><span class="cm-variable">df3</span> = <span class="cm-variable">pd</span>.<span class="cm-property">merge</span>(<span class="cm-variable">1</span>, <span class="cm-variable">2</span>, <span class="cm-variable">on</span>=<span class="cm-string">"fruits"</span>, <span class="cm-variable">how</span>=<span class="cm-string">"inner"</span>)
<span class="cm-builtin">print</span>(<span class="cm-variable">df3</span>)</span>
   amount      fruits  year_x  price  year_y
0       1       apple    2001    150    2001
1       4      orange    2002    120    2002
2       5      banana    2001    100    2001
3       6  strawberry    2008    250    2008

Filed Under: Pandas

DataFrameをcsvに変換

2017年11月29日 by 河副 太智 Leave a Comment

import pandas as pd

data = {'city': ['Nagano', 'Sydney', 'Salt Lake City', 'Athens', 'Torino', 'Beijing', 'Vancouver', 'London', 'Sochi', 'Rio de Janeiro'],
'year': [1998, 2000, 2002, 2004, 2006, 2008, 2010, 2012, 2014, 2016],
'season': ['winter', 'summer', 'winter', 'summer', 'winter', 'summer', 'winter', 'summer', 'winter', 'summer']}

df = pd.DataFrame(data)

df.to_csv("csv.csv")
これを実行するとcsv.csvというCSVデータが同じディレクトリに作成

Filed Under: Pandas

csvを作成して追加

2017年11月29日 by 河副 太智 Leave a Comment

import csv

import time
from datetime import datetime

with open(‘csv0.csv’, ‘w’) as csvfile:
writer = csv.writer(csvfile, lineterminator=’\n’)
writer.writerow([‘2’, ‘3’, ‘5’])
writer.writerow([‘7′, ’11’, ’13’])

writer.writerow([datetime.now(),value])#関数、変数もカンマ区切りで入る

csv0.csvというファイルが同じディレクトリに生成される

Filed Under: Python 基本

  • « Go to Previous Page
  • Page 1
  • Interim pages omitted …
  • Page 44
  • Page 45
  • Page 46
  • Page 47
  • Page 48
  • Interim pages omitted …
  • Page 66
  • Go to Next Page »

Primary Sidebar

カテゴリー

  • AWS
  • Bootstrap
  • Dash
  • Django
  • flask
  • GIT(sourcetree)
  • Plotly/Dash
  • VPS
  • その他tool
  • ブログ
  • プログラミング
    • Bokeh
    • css
    • HoloViews
    • Jupyter
    • Numpy
    • Pandas
    • PosgreSQL
    • Python 基本
    • python3
      • webアプリ
    • python3解説
    • scikit-learn
    • scipy
    • vps
    • Wordpress
    • グラフ
    • コマンド
    • スクレイピング
    • チートシート
    • データクレンジング
    • ブロックチェーン
    • 作成実績
    • 時系列分析
    • 機械学習
      • 分析手法
      • 教師有り
    • 異常値検知
    • 自然言語処理
  • 一太郎
  • 数学
    • sympy
      • 対数関数(log)
      • 累乗根(n乗根)
    • 暗号学

Copyright © 2025 · Genesis Sample on Genesis Framework · WordPress · Log in