시작하기무료로 시작하기

모든 거래소의 연도별 Technology IPO

listings 딕셔너리의 각 기업에는 1972년부터 2017년 사이의 IPO 연도가 있습니다. 따라서 이 맥락에서는 'IPO Year' 열이 dtypefloat64이더라도, 잘 정의된 순서를 가진 범주형 변수로 간주하는 것이 적절합니다.

이 연습에서는 세 거래소의 데이터를 합쳐 Technology 섹터 기업들의 IPO 연도 분포를 그려 보겠습니다. pandaspd로, matplotlib.pyplotplt로 이미 임포트되어 있으며, 이전 연습 문제의 listings 딕셔너리도 작업 공간에 있습니다.

이 연습은 강의의 일부입니다

Python으로 금융 데이터 가져오기와 관리

강의 보기

연습 안내

  • 각 거래소 이름을 담은 반복 변수 exchange를 사용해 for 루프를 만드세요.
    • 매 반복에서 listings에서 키 exchange에 해당하는 DataFrame을 all_listings에 추가하세요.
  • 루프가 끝나면 pd.concat()으로 all_listings의 세 DataFrame을 결합해 결과를 listing_data에 할당하세요.
  • listing_data에서 'Technology' 기업만 필터링해 결과를 tech_companies에 할당하세요.
  • tech_companies'IPO Year' 열을 ipo years에 할당하세요.
  • 이 데이터에 대해 .dropna()로 결측값을 제거하고 .astype()으로 int로 변환하세요.
  • ipo_years.value_counts()를 적용하고 연도를 오름차순으로 정렬한 뒤, 제목이 'Tech IPOs by Year'인 막대 그래프를 만드세요.
  • xticks를 45도로 회전시키고 결과를 표시하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Create lists
exchanges = ['amex', 'nasdaq', 'nyse']
all_listings = []

# Use for loop to create listing_data
for exchange in exchanges:
    all_listings.____(____[____])
    
# Combine DataFrames
listing_data = pd.____(____)

# Select tech companies
tech_companies = listing_data[____.____ == 'Technology']

# Create ipo_years
ipo_years = ____[____]

# Drop missing values and convert to int
ipo_years = ipo_years.____().____(int)

# Count values, sort ascending by year, and create a bar plot
ipo_years.____().plot(kind=____, ____='Tech IPOs by Year')

# Rotate xticks and show result
plt.xticks(____=____)

# Show the plot
plt.show()
코드 편집 및 실행