일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- ASP
- 날짜
- javascript
- node.js
- PyQt5
- port
- sqlite
- flutter
- 라즈베리파이
- IOS
- PER
- PyQt
- urllib
- 다이어트
- 리눅스
- MS-SQL
- Excel
- GIT
- Unity
- 맛집
- MySQL
- pandas
- swift
- mssql
- ubuntu
- Linux
- tensorflow
- python
- 유니티
- 함수
목록랭귀지 (555)
아미(아름다운미소)
import pandas as pdimport numpy as npdef p_location_vectorized(df, p_location_col): # 벡터화된 연산을 위해 numpy의 where 함수를 사용 df['return_value'] = np.where( df[p_location_col].str.contains('@'), # '@'가 포함된 경우 df[p_location_col].str.split('@').str[-1], # '@' 이후의 부분을 반환 np.where( df[p_location_col].str.contains('\\$'), # '$'가 포함된 경우 df[p_location_col].st..
import pandas as pdimport numpy as np# 예시 데이터 생성data = { 'a': ['aaa'] * 50 + ['bbb'] * 150 + ['ccc'] * 200 + ['ddd'] * 100, # 행 수를 조정 'b': ['bbb'] * 100 + ['ccc'] * 200 + ['aaa'] * 150 + ['bbb'] * 50}df = pd.DataFrame(data)# 조건에 맞는 행을 랜덤하게 추출 (최대 100개)def safe_sample(df, condition, n=100): filtered = df[condition] sample_size = min(len(filtered), n) # 조건에 맞는 행 수와 n 중 작은 값 선택 ret..
import pandas as pdimport timedef convert_to_datetime_coerce(df, column_name, date_format='%Y-%m-%d'): """ 데이터프레임의 특정 열을 datetime으로 변환합니다. errors='coerce'를 사용하여 변환할 수 없는 값을 NaT로 대체합니다. Parameters: df (pd.DataFrame): 변환할 데이터프레임 column_name (str): 변환할 열 이름 date_format (str): 날짜 형식 (기본값: '%Y-%m-%d') Returns: pd.DataFrame: 변환된 데이터프레임 """ start = time...
# 다른 부분을 나란히 비교diff_result = pd.concat([df[diff], df2[diff]], axis=1, keys=['df_a', 'df2_a'])print(diff_result)
import pandas as pddef days_to_timedelta(days: float) -> pd.Timedelta: return pd.Timedelta(days=days)import mathfrom datetime import timedeltadef convert_days_to_timedelta(f_day: float) -> timedelta: total_seconds = f_day * 86400.0 # 24*60*60 days, remainder_seconds = divmod(total_seconds, 86400) seconds, microseconds = divmod(round(remainder_seconds * 1_000_000), 1_000_000) retu..
import pandas as pdimport numpy as npdef calculate_week_start(df, week_code_col, output_col='start_datetime'): """ 주차 코드를 시작일로 변환하는 함수 (성능 최적화 버전). Parameters: df (pd.DataFrame): 입력 데이터프레임 week_code_col (str): 주차 코드 컬럼명 (예: "202401A") output_col (str): 결과 컬럼명 (기본값: "start_datetime") Returns: pd.DataFrame: 시작일이 추가된 데이터프레임 """ # 원본 데이터프레임 보존을 위해 복사 ..
def write_limited_lines(file_path, new_line, max_lines=5): # 기존 파일 읽기 try: with open(file_path, "r", encoding="utf-8") as f: lines = f.readlines() except FileNotFoundError: lines = [] # 기존 내용에서 마지막 (max_lines - 1) 줄만 유지 lines = lines[-(max_lines - 1):] # 새로운 줄 추가 lines.append(new_line + "\n") # 파일 다시 쓰기 with open(file_path, "w", encoding="utf..
import pandas as pd# 샘플 데이터 생성data1 = { 'id': [1, 2, 3, 4, 5], 'name': ['Alice', 'Bob', 'Charlie', 'David', 'Eva'], 'age': [25, 30, 35, 40, 45], 'city': ['New York', 'Los Angeles', 'Chicago', 'Houston', 'Phoenix']}data2 = { 'id': [1, 2, 3, 4, 5], 'name': ['Alice', 'Bob', 'Charlie', 'Daniel', 'Eva'], # 'David' -> 'Daniel' 'age': [25, 30, 35, 40, 50], # 45 -> 50 'city': [..
import pandas as pd# 샘플 데이터 범위 확장 (년도가 바뀌는 경우 포함)data = { 'date': pd.date_range(start='2023-12-20', periods=20, freq='D'), # 2023-12-20부터 20일간 'value': range(100, 2100, 100) # 100부터 2000까지 100씩 증가}df = pd.DataFrame(data)# 주차(week) 컬럼 추가 (ISO 주차 기준)df['week'] = df['date'].dt.isocalendar().weekdf['year'] = df['date'].dt.isocalendar().year # 연도 정보 추가# 조건: value가 500보다 큰 경우condition = df['v..
import pandas as pdimport numpy as np# 샘플 DataFrame 생성df = pd.DataFrame({ "fruit": ["apple", "banana", "cherry", "date", "elderberry"], "quantity": [5, 3, 7, 2, 4], "price": [100, 50, 200, 30, 150]})# 조건 리스트 (여러 컬럼을 함께 비교)condlist = [ (df["fruit"] == "apple") & (df["quantity"] > 4), # "apple"이고 quantity가 4보다 큰 경우 (df["fruit"] == "banana") | (df["price"] = 150) # price가 150 이상인 경..