pandas

import pandas as pd

ใƒ‡ใƒผใ‚ฟๅž‹

ใ‚ตใƒณใƒ—ใƒซใƒ‡ใƒผใ‚ฟ

df = pd.DataFrame([
    {"column1": 1, "column2": 2},
    {"column1": 3, "column2": 4},
])

ๅž‹ใ‚’็ขบ่ชใ™ใ‚‹

df.dtypes
column1    int64
column2    int64
dtype: object

็ตๆžœใฏSeriesใจใชใ‚‹ใ€‚

ๅž‹ใ‚’ๅค‰ๆ›ใ™ใ‚‹(ไธ€ๆ‹ฌ)

_df = df.astype("str")
_df.dtypes
column1    object
column2    object
dtype: object

ๅž‹ใ‚’ๅค‰ๆ›ใ™ใ‚‹(ๅ€‹ๅˆฅ)

ใชใŠใ€ๆ–‡ๅญ—ๅˆ—ใงๆŒ‡ๅฎšใ—ใฆใ‚‚่งฃ้‡ˆใ—ใฆใใ‚Œใ‚‹

NumPyใฎๅž‹ใ‚‚่งฃ้‡ˆๅฏ่ƒฝใ€‚

็ฝฎๆ›

  • ใ‚ตใƒณใƒ—ใƒซใƒ‡ใƒผใ‚ฟ

่พžๆ›ธๅž‹ใง็ฝฎๆ›ๅฏ่ƒฝใ€‚

Seriesใซๅฏพใ—ใฆใ‚‚ๅฏ่ƒฝใ€‚

ใ‚ซใƒฉใƒ ๅใ‚’็ฝฎใๆ›ใˆใ‚‹ๅ ดๅˆใฏใ€ใ‚ญใƒผใƒฏใƒผใƒ‰ๅผ•ๆ•ฐใงcolumnsใ‚’ไฝฟ็”จใ™ใ‚‹ใ€‚

ๆŠฝๅ‡บ(query)

user_idใŒ้‡่ค‡ใ—ใฆใ„ใ‚‹ใƒฌใ‚ณใƒผใƒ‰ใ‚’ๆŠฝๅ‡บใ™ใ‚‹ไพ‹ใ€‚

","ใง็ตๅˆใ—ใฆใ€queryใฎinใงๆŠฝๅ‡บใ™ใ‚‹ใ€‚

ใ‚ซใƒฉใƒ ใฎไธฆใณๆ›ฟใˆ

  • ไธฆใณๅค‰ใˆใŸใ‚ซใƒฉใƒ ใ‚’[]ใซๅ…ฅใ‚Œใ‚‹ใ ใ‘ใง่‰ฏใ„ใ€‚

group้›†่จˆใ—ใฆ็ตฑ่จˆ้‡ใ‚’่จˆ็ฎ—ใ™ใ‚‹ใ€‚

  • ๆ—ขใซๆบ–ๅ‚™ใ•ใ‚Œใฆใ„ใ‚‹็ตฑ่จˆ่จˆ็ฎ—ใ‚’ใ™ใ‚‹ๅ ดๅˆ

  • ่‡ชไฝœใงpersentileใชใฉใ‚’่จˆ็ฎ—ใ—ใŸใ„ๅ ดๅˆ

  • ๆ™‚็ณปๅˆ—ใƒ‡ใƒผใ‚ฟใ‚’้›†่จˆใ™ใ‚‹ๅ ดๅˆ

    • ๆ™‚ๅˆปๆƒ…ๅ ฑใŒใ‚ใ‚‹ๅ ดๅˆใ€ใใฎๅˆ—ใ‚’indexใซใ™ใ‚‹ใ“ใจใงใ€resampleใŒไฝฟใˆใฆ้›†่จˆใงใใ‚‹ใ€‚

    • ่ณผๅ…ฅ้‡ใฎๆ™‚็ณปๅˆ—ใƒ‡ใƒผใ‚ฟใฎใ‚คใƒกใƒผใ‚ธใงไปฅไธ‹ใฏ'M'ใงๆœˆใ”ใจใฎ็ตๆžœใ‚’้›†่จˆใ™ใ‚‹ไพ‹ใ€‚

่กŒใ‚’ๆŒฟๅ…ฅใ™ใ‚‹ใ€‚

  • seriesใ‚’appendใ™ใ‚‹ใ€‚

  • dictใ‚’appendใ™ใ‚‹ใ€‚

ๅˆ—ๆฏŽใฎๆฌ ๆๆ•ฐใ‚’ๆฑ‚ใ‚ใ‚‹ใ€‚

applyใฎไฝฟ็”จๆณ•ใพใจใ‚

query่จ˜ๆณ•ใ‚’ไฝฟใฃใŸๆกไปถๆŠฝๅ‡บ

  • ใ‚ซใƒฉใƒ ๅใซ็ฉบ็™ฝใฎใ‚ใ‚‹ๅ ดๅˆใฏใƒใƒƒใ‚ฏใ‚ฏใ‚ฉใƒผใƒˆใ‚’ไฝฟใ†ใ€‚

  • placeholderใฏใ€f-stringใงใ‚‚ใ‹ใ‘ใ‚‹ใŒใ€@ใฎๆ–นใŒๆฑŽ็”จๆ€งใŒ้ซ˜ใ„ใ€‚

ๆ™‚ๅˆป็ณปใฎใƒ‡ใƒผใ‚ฟใ‚’query่จ˜ๆณ•ใงๅ‡ฆ็†

ใŸใจใˆใฐtimedeltaใ‚’ๆ•ฐๅ€คใจใ—ใฆๆ‰ฑใ„ใŸใ„ๅ ดๅˆใชใฉใฏใ€datetime.timedeltaใจไฝตใ›ใฆไฝฟใ†ใ€‚

read_csvใงๅž‹ๆŒ‡ๅฎš

  • dictใงๅ„ๅˆ—ใฎๅž‹ใ‚’ๆŒ‡ๅฎšใงใใ‚‹ใ€‚

  • ๆ—ฅไป˜็ญ‰ใฏไปฅไธ‹ใฎใ‚ˆใ†ใซๅพŒๅค‰ๆ›ใ™ใ‚‹ใ€‚

ๆŠฝๅ‡บใ—ใฆๆ–ฐใ—ใ„ๅˆ—ใ‚’ไฝœใ‚‹

rank: ้ †ไฝใ‚’ไป˜ใ‘ใ‚‹

unique: ๅ‡บ็พใ™ใ‚‹็จฎ้กžใ‚’ๆŠŠๆกใ™ใ‚‹

value_counts: ๅ†…่จณใ‚’็Ÿฅใ‚‹

ใใฎไป–ใฎใ‚ชใƒ—ใ‚ทใƒงใƒณ

  • normalize=Trueใงๆฏ”็އใ‚’่จˆ็ฎ—ใงใใ‚‹ใ€‚

  • bins=30ใง้€ฃ็ถšๅ€คใ‚‚้›†่จˆใงใใ‚‹ใ€‚

  • dropna=TrueใงNaNใ‚’็„ก่ฆ–ใงใใ‚‹ใ€‚

sort_values: ไธฆในๆ›ฟใˆ

isnull(): ๆฌ ๆๅ€คใ‹ใฉใ†ใ‹ใ‚’่ชฟในใ‚‹

dropna(): ๆฌ ๆๅ€คใ‚’ๅ‰Š้™คใ™ใ‚‹

  • ้€šๅธธใฏไธ€ใคใงใ‚‚ๆฌ ๆใŒใ‚ใ‚‹ๅ ดๅˆใฏๅ‰Š้™คใ•ใ‚Œใ‚‹ใ€‚

  • ใฉใ“ใ‹ใฎๅˆ—ใซๅŸบใฅใใŸใ„ๅ ดๅˆใฏใ€subsetใงๆŒ‡ๅฎšใ™ใ‚‹ใ€‚

ๆฌ ๆๅ€คใ‚’ๅˆ—ๆฏŽใซไฟฎๆญฃใ™ใ‚‹

locใจilocใฎ้•ใ„

  • locใฏindex(ใ„ใ‚ใ‚†ใ‚‹DataFrameใฎIndex), columnๅใงใ‚ขใ‚ฏใ‚ปใ‚นใ™ใ‚‹ใ€‚

  • ilocใฏๆœฌๅฝ“ใฎindex็•ชๅทใง็ธฆๆจชใจใ‚‚ใซใ‚ขใ‚ฏใ‚ปใ‚นใ™ใ‚‹ใ€‚

    • ใชใฎใงilocใ‚’ไฝฟใˆใฐใ€reset_index(drop=True)ใ—ใชใใฆใ‚‚ใ‚ขใ‚ฏใ‚ปใ‚นใ—ใŸใ„ใ‚‚ใฎใซใ‚ขใ‚ฏใ‚ปใ‚นใงใใ‚‹ใ‹ใ‚‚ใ—ใ‚Œใชใ„

merge: joinใ—ใŸใ„ใจใ

  • ใ ใ„ใŸใ„ใ“ใ‚“ใชๆ„Ÿใ˜ใฎๆ›ธใๆ–นใซใŠใ•ใพใ‚‹ใ€‚

  • ่ค‡ๆ•ฐใ‚’ใ‚ญใƒผใซjoinใ—ใŸใ„ๅ ดๅˆใฏใ€on=['column1', 'column2']ใจใ™ใ‚ŒใฐOKใ€‚

  • joinๅพŒใซ้‡่ค‡ใ™ใ‚‹ใ‚ซใƒฉใƒ ๅใฏใ€suffixes=['_left', '_right']ใจๆŒ‡ๅฎšใ™ใ‚Œใฐๆœซๅฐพใซ็›ฎๅฐใ‚’ใคใ‘ใ‚‰ใ‚Œใ‚‹ใ€‚

groupby + agg: ้›†็ด„ใ—ใŸใ„ใจใ

  • ใ ใ„ใŸใ„ใ“ใ‚“ใชๆ„Ÿใ˜ใฎๆ›ธใๆ–นใซใŠใ•ใพใ‚‹ใ€‚

grouby + transform: ้›†็ด„ใ—ใŸใ‚‚ใฎใ‚’ๅ„่กŒใซๅ‰ฒใ‚Šๅฝ“ใฆใ‚‹

  • ้›†็ด„ใจใชใ‚‹meanใ‚„sumใฏใ€transformใซใ‚ˆใ‚Š่กŒใ‚’ๅ…ƒใฎDFใซๆ‹กๅผตใ™ใ‚‹ใ“ใจใŒใงใใ‚‹ใ€‚

groupby + shift, rank: ้›†็ด„ใงใชใ„ๅ ดๅˆใฎgroupby + ๅ„่กŒๅ‰ฒใ‚Šๅฝ“ใฆ

  • transformใจใ‹ใ‚‚้ธๆŠž่‚ขใซใงใฆใใ‚‹ใ‘ใฉใ€ไฝฟใ‚ใชใใฆใ‚‚่กŒใ‘ใ‚‹ใ€‚

  • ้›†็ด„ใงใฏใชใใ€shiftใ‚„rankใชใฉใฎๅ ดๅˆใฏใ“ใฎๆ–นๆณ•ใŒไฝฟใˆใ‚‹ใ€‚

idxmin: ๆœ€ๅฐๅ€คใฎๆ™‚ใฎPandas Indexใ‚’ๅพ—ใ‚‹

drop_duplicates: ้‡่ค‡ใ‚’ๅ‰Š้™คใ™ใ‚‹

  • ๆฎ‹ใ™ใ‚‚ใฎใ‚’ใ‚ณใƒณใƒˆใƒญใƒผใƒซใ™ใ‚‹ใŸใ‚ใซใฏใ€ไบ‹ๅ‰ใซsort_valuesใ—ใฆใŠใๆ„Ÿใ˜ใฎไฝฟใ„ๆ–นใจใชใ‚‹ใ€‚

duplicated: ้‡่ค‡ใฎๅˆคๅฎš

  • ใปใผdrop_duplicatedใจๅŒใ˜ใ€‚

  • ๆŠฝๅ‡บใฎๅ ดๅˆใฏใ“ใ†ใ™ใ‚‹

ใ‚ˆใ‚Š้ซ˜ๅบฆใชๆœ€้ฉๅŒ–

Last updated