๋ฐ์ํ
๐ฌ KeyError: 'column_name'
๋ฐ์ดํฐ ๋ค๋ฃจ๋ค ๋ณด๋ฉด ๊ผญ ํ ๋ฒ์ ๋ง์ฃผ์น๋ ์ด ์๋ฌ.
์ ๋ฐ์ํ๊ณ , ์ด๋ป๊ฒ ์๋ฐฉํ ์ ์์๊น์?
โ ์๋ฌ ๋ฉ์์ง ์์
KeyError: 'price'
→ ์๋ key(๋๋ column)๋ฅผ ์ฐพ์ผ๋ ค ํด์ ๋ฐ์ํ ์ค๋ฅ์ ๋๋ค.
๐ ์์ธ: ๋์ ๋๋ฆฌ๋ DataFrame์์ ์๋ ํค๋ฅผ ํธ์ถํ์ ๋
my_dict = {'a': 1, 'b': 2}
print(my_dict['c']) # โ KeyError ๋ฐ์
๋๋ Pandas์์:
import pandas as pd
df = pd.DataFrame({
'name': ['a', 'b'],
'value': [1, 2]
})
df['price'] # โ 'price'๋ผ๋ ์ปฌ๋ผ์ด ์์
๐งช ์์ฃผ ๋ฐ์ํ๋ ์ฌ๋ก
โ ์คํ
df['Price'] # ๋์๋ฌธ์ ๊ตฌ๋ถ ๋๋ฌธ์ ์ค๋ฅ ๋ฐ์
โ drop(), groupby(), merge() ๋ฑ์์ ์กด์ฌํ์ง ์๋ ์ปฌ๋ผ ์ง์
df.drop(columns=['price']) # ์๋ ์ปฌ๋ผ์ด๋ฉด KeyError
๐ ๏ธ ํด๊ฒฐ ๋ฐฉ๋ฒ
โ ์ปฌ๋ผ ์กด์ฌ ์ฌ๋ถ ํ์ธ ํ ์ฌ์ฉ
if 'price' in df.columns:
df['price']
else:
print("์ปฌ๋ผ์ด ์์ต๋๋ค.")
โ get() ์ฌ์ฉ (๋์ ๋๋ฆฌ์์)
value = my_dict.get('c', 0) # ์์ผ๋ฉด ๊ธฐ๋ณธ๊ฐ 0
โ try-except๋ก ์๋ฌ ๋ฐฉ์ง
try:
df['price']
except KeyError:
print("ํด๋น ์ปฌ๋ผ์ด ์กด์ฌํ์ง ์์ต๋๋ค.")
โ ๋ง๋ฌด๋ฆฌ ์ ๋ฆฌ
- KeyError๋ ์กด์ฌํ์ง ์๋ ํค๋ ์ปฌ๋ผ๋ช ์ ํธ์ถํ ๋ ๋ฐ์ํฉ๋๋ค.
- ์คํ, ๋์๋ฌธ์ ๊ตฌ๋ถ, ์ปฌ๋ผ ์ญ์ ํ ํธ์ถ ๋ฑ์ ์ค์๊ฐ ์์ธ์ผ ์ ์์ต๋๋ค.
- ํธ์ถ ์ ์ in์ผ๋ก ์กด์ฌ ์ฌ๋ถ๋ฅผ ์ฒดํฌํ๊ฑฐ๋, get()์ ์ฌ์ฉํด ์์ ํ๊ฒ ์ฒ๋ฆฌํ์ธ์.
๐ ๋ค์์ ๋ณด๋ฉด ์ข์ ๊ธ
๐น [์๋ฌ ํด๊ฒฐ] ValueError: could not convert string to float – ์ ์ด๋ฐ ์๋ฌ๊ฐ ๋ ๊น?
๋ฐ์ํ
'IT' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์๋ฌ ํด๊ฒฐ] IndexError โ ์ธ๋ฑ์ค๋ฅผ ๋ฒ์ด๋ฌ๋ค๊ณ ์? (0) | 2025.06.20 |
---|---|
[์๋ฌ ํด๊ฒฐ] TypeError: 'int' object is not subscriptable โ ๋ฆฌ์คํธ์ฒ๋ผ ์ฐ๋ฉด ์ ๋ผ์! (1) | 2025.06.19 |
[์๋ฌ ํด๊ฒฐ] ValueError: could not convert string to float โ ์ ์ด๋ฐ ์๋ฌ๊ฐ ๋ ๊น? (0) | 2025.06.11 |
tmux๋? ๐ป (2) | 2024.01.27 |
FastAPI๋ ๋ฌด์์ผ๊น? ๐ป (0) | 2024.01.26 |