카테고리 없음

자바스크립트 배열메서드

송테이토 2023. 7. 9. 22:33

점수가 Integer 값으로 들어올 때

const dataInteger = [
  { "year": "2022", "month": "3", "koreaScore": 72, "EnglishScore": 86, "MathScore": 41, "teacher": ["김철수", "John Smith", "Emily Lee"] },
  { "year": "2022", "month": "4", "koreaScore": 94, "EnglishScore": 68, "MathScore": 75, "teacher": ["이영희", "Sophia Kim"] },
  { "year": "2022", "month": "5", "koreaScore": 33, "EnglishScore": 55, "MathScore": 87, "teacher": ["박영수", "Daniel Lee", "Michael Park"] },
  { "year": "2022", "month": "6", "koreaScore": 79, "EnglishScore": 92, "MathScore": 61, "teacher": ["홍미경"] },
  { "year": "2022", "month": "7", "koreaScore": 58, "EnglishScore": 72, "MathScore": 83, "teacher": ["John Johnson", "최영철", "김영순", "이지은"] },
  { "year": "2022", "month": "8", "koreaScore": 95, "EnglishScore": 37, "MathScore": 80, "teacher": ["Michael Lee", "박민수", "박영희", "John Smith", "Emily Johnson"] },
  { "year": "2022", "month": "9", "koreaScore": 66, "EnglishScore": 81, "MathScore": 44, "teacher": ["Sophia Park"] },
  { "year": "2022", "month": "10", "koreaScore": 88, "EnglishScore": 76, "MathScore": 96, "teacher": ["김철수", "Daniel Kim", "홍길동"] },
  { "year": "2022", "month": "11", "koreaScore": 50, "EnglishScore": 93, "MathScore": 70, "teacher": ["이영희", "Sophia Kim", "John Johnson", "Michael Park", "Emily Lee"] },
  { "year": "2022", "month": "12", "koreaScore": 82, "EnglishScore": 60, "MathScore": 78, "teacher": ["홍미경", "최영철"] },
  { "year": "2023", "month": "1", "koreaScore": 77, "EnglishScore": 48, "MathScore": 90, "teacher": ["김영순", "이지은", "Daniel Lee", "John Smith", "Emily Johnson"] },
  { "year": "2023", "month": "2", "koreaScore": 39, "EnglishScore": 69, "MathScore": 84, "teacher": ["Sophia Park", "홍길동", "박영수", "Michael Park"] },
  { "year": "2023", "month": "3", "koreaScore": 91, "EnglishScore": 54, "MathScore": 73, "teacher": ["홍미경", "Daniel Kim", "김철수", "최영철", "John Johnson", "박민수"] },
  { "year": "2023", "month": "4", "koreaScore": 62, "EnglishScore": 89, "MathScore": 42, "teacher": ["Emily Lee", "이영희"] },
  { "year": "2023", "month": "5", "koreaScore": 96, "EnglishScore": 74, "MathScore": 67, "teacher": ["홍길동", "John Smith", "Michael Park", "Sophia Kim"] },
  { "year": "2023", "month": "6", "koreaScore": 45, "EnglishScore": 83, "MathScore": 58, "teacher": ["최영철", "김영순", "Emily Johnson", "이지은", "Daniel Lee"] },
  { "year": "2023", "month": "7", "koreaScore": 87, "EnglishScore": 62, "MathScore": 97, "teacher": ["박영수", "홍미경", "John Johnson", "김철수"] },
  { "year": "2023", "month": "8", "koreaScore": 52, "EnglishScore": 98, "MathScore": 76, "teacher": ["Michael Lee", "Sophia Park"] },
  { "year": "2023", "month": "9", "koreaScore": 73, "EnglishScore": 47, "MathScore": 63, "teacher": ["Daniel Kim", "최영철", "Emily Lee"] },
  { "year": "2023", "month": "10", "koreaScore": 81, "EnglishScore": 71, "MathScore": 85, "teacher": ["John Smith", "박민수", "이지은", "홍길동", "김영순"] },
  { "year": "2023", "month": "11", "koreaScore": 59, "EnglishScore": 88, "MathScore": 49, "teacher": ["최영철", "김철수", "Michael Park"] },
  { "year": "2023", "month": "12", "koreaScore": 83, "EnglishScore": 53, "MathScore": 77, "teacher": ["John Johnson", "이영희", "Sophia Kim", "Emily Johnson"] },
  { "year": "2024", "month": "1", "koreaScore": 70, "EnglishScore": 95, "MathScore": 65, "teacher": ["홍길동", "김철수", "Daniel Kim", "Michael Lee", "최영철", "Emily Lee", "박민수"] }
];

점수가 String 값으로 들어올

const data = [
  { "year": "2022", "month": "3", "koreaScore": "72", "EnglishScore": "86", "MathScore": "41", "teacher": ["김철수", "John Smith", "Emily Lee"] },
  { "year": "2022", "month": "4", "koreaScore": "94", "EnglishScore": "68", "MathScore": "75", "teacher": ["이영희", "Sophia Kim"] },
  { "year": "2022", "month": "5", "koreaScore": "33", "EnglishScore": "55", "MathScore": "87", "teacher": ["박영수", "Daniel Lee", "Michael Park"] },
  { "year": "2022", "month": "6", "koreaScore": "79", "EnglishScore": "92", "MathScore": "61", "teacher": ["홍미경"] },
  { "year": "2022", "month": "7", "koreaScore": "58", "EnglishScore": "72", "MathScore": "83", "teacher": ["John Johnson", "최영철", "김영순", "이지은"] },
  { "year": "2022", "month": "8", "koreaScore": "95", "EnglishScore": "37", "MathScore": "80", "teacher": ["Michael Lee", "박민수", "박영희", "John Smith", "Emily Johnson"] },
  { "year": "2022", "month": "9", "koreaScore": "66", "EnglishScore": "81", "MathScore": "44", "teacher": ["Sophia Park"] },
  { "year": "2022", "month": "10", "koreaScore": "88", "EnglishScore": "76", "MathScore": "96", "teacher": ["김철수", "Daniel Kim", "홍길동"] },
  { "year": "2022", "month": "11", "koreaScore": "50", "EnglishScore": "93", "MathScore": "70", "teacher": ["이영희", "Sophia Kim", "John Johnson", "Michael Park", "Emily Lee"] },
  { "year": "2022", "month": "12", "koreaScore": "82", "EnglishScore": "60", "MathScore": "78", "teacher": ["홍미경", "최영철"] },
  { "year": "2023", "month": "1", "koreaScore": "77", "EnglishScore": "48", "MathScore": "90", "teacher": ["김영순", "이지은", "Daniel Lee", "John Smith", "Emily Johnson"] },
  { "year": "2023", "month": "2", "koreaScore": "39", "EnglishScore": "69", "MathScore": "84", "teacher": ["Sophia Park", "홍길동", "박영수", "Michael Park"] },
  { "year": "2023", "month": "3", "koreaScore": "91", "EnglishScore": "54", "MathScore": "73", "teacher": ["홍미경", "Daniel Kim", "김철수", "최영철", "John Johnson", "박민수"] },
  { "year": "2023", "month": "4", "koreaScore": "62", "EnglishScore": "89", "MathScore": "42", "teacher": ["Emily Lee", "이영희"] },
  { "year": "2023", "month": "5", "koreaScore": "96", "EnglishScore": "74", "MathScore": "67", "teacher": ["홍길동", "John Smith", "Michael Park", "Sophia Kim"] },
  { "year": "2023", "month": "6", "koreaScore": "45", "EnglishScore": "83", "MathScore": "58", "teacher": ["최영철", "김영순", "Emily Johnson", "이지은", "Daniel Lee"] },
  { "year": "2023", "month": "7", "koreaScore": "87", "EnglishScore": "62", "MathScore": "97", "teacher": ["박영수", "홍미경", "John Johnson", "김철수"] },
  { "year": "2023", "month": "8", "koreaScore": "52", "EnglishScore": "98", "MathScore": "76", "teacher": ["Michael Lee", "Sophia Park"] },
  { "year": "2023", "month": "9", "koreaScore": "73", "EnglishScore": "47", "MathScore": "63", "teacher": ["Daniel Kim", "최영철", "Emily Lee"] },
  { "year": "2023", "month": "10", "koreaScore": "81", "EnglishScore": "71", "MathScore": "85", "teacher": ["John Smith", "박민수", "이지은", "홍길동", "김영순"] },
  { "year": "2023", "month": "11", "koreaScore": "59", "EnglishScore": "88", "MathScore": "49", "teacher": ["최영철", "김철수", "Michael Park"] },
  { "year": "2023", "month": "12", "koreaScore": "83", "EnglishScore": "53", "MathScore": "77", "teacher": ["John Johnson", "이영희", "Sophia Kim", "Emily Johnson"] },
  { "year": "2024", "month": "1", "koreaScore": "70", "EnglishScore": "95", "MathScore": "65", "teacher": ["홍길동", "김철수", "Daniel Kim", "Michael Lee", "최영철", "Emily Lee", "박민수"] }
  { "year": "2024", "month": "2", "koreaScore": "96", "EnglishScore": "95", "MathScore": "65", "teacher": ["홍길동", "김철수", "Daniel Kim", "Michael Lee", "최영철", "Emily Lee", "박민수"] }

];

기본문제

  1. 각 리스트에 인덱스 넣기
  2. "year"과 "month" 속성의 값을 추출하여 라벨로 사용
  3. 주어진 데이터에서 각 월별 평균 국어 점수를 구하기
  4. 데이터에서 가장 높은 국어 점수를 가진 월을 찾아 해당 월의 정보를 출력하기
  5. 데이터에서 국어 점수가 70점 이상이고, 수학 점수가 80점 이상인 데이터의 개수 출력하기
  6. "IsPass"라는 라벨을 추가하고, 세 과목의 평균이 65점 아래라면 False, 그렇지 않으면 True를 할당하기
  7. 세 과목의 평균이 65점 이상이지만, 한 과목이라도 50점 이하 점수가 있다면 "IsPass"를 False로 변경하기
  8. 세 과목의 평균과목 라벨을 추가하기
  9. 2022년 시험 결과만 출력하기 (인덱스 포함)
  10. 2023년 시험 결과만 출력하기 (인덱스 포함)
  11. 2022년에 국어 점수가 80점 이상인 경우 출력하기
  12. 2022년에 "Pass"한 경우 출력하기
  13. 2023년일 때 가장 높은 평균 점수를 기록한 필드 출력하기
  14. 2022년일 때 가장 높은 평균 점수를 기록한 필드 출력하기
  15. "teacher"의 모든 값에 라벨과 옵션을 붙이기
  16. "teacher"의 수가 1명인 데이터만 출력하기
  17. 데이터에서 가장 많은 교사가 지도한 월의 정보 출력하기
  18. 각 리스트의 점수들의 합계 구하기
  19. 각 리스트에서 세 과목의 최고 점수 구하기
  20. 각 리스트에서 세 과목 중 최저 점수 구하기
  21. 각 리스트에서 세 과목 중 중간값 구하기
  22. 각 리스트에서 세 과목의 표준 편차 구하기
  23. 수학점수의 최소값 구하기
  24. 데이터에서 국어 점수가 90점 이상인 데이터의 인덱스를 구하세요.
  25. 각 데이터에서 교사들의 수를 구하세요.
  26. 데이터에서 수학 점수가 70점 이상인 데이터의 평균 국어 점수를 구하세요.
  27. 데이터에서 영어 점수가 80점 이상인 데이터의 수학 점수 합계를 구하세요.
  28. 데이터에서 국어 점수가 가장 높은 데이터의 월과 교사들을 출력하세요.
  29. 데이터에서 수학 점수가 60점 이하인 데이터의 영어 점수 평균을 구하세요.
  30. 데이터에서 영어 점수가 90점 이상인 데이터의 수학 점수 최소값을 구하세요.
  31. 데이터에서 국어 점수가 80점 이상인 데이터의 영어 점수 합계를 구하세요.
  32. 데이터에서 수학 점수가 80점 이상인 데이터의 평균 영어 점수를 구하세요.
  33. 데이터에서 국어 점수가 70점 이상인 데이터의 수학 점수 중에서 최대값을 구하세요.

심화문제

  1. 데이터에서 각 월별로 국어, 영어, 수학 점수의 평균과 표준편차를 구하세요.
  2. 데이터에서 수학 점수가 80점 이상이면서 국어 점수가 70점 이하인 데이터의 수학 점수를 10점씩 감소시킨 후, 해당 데이터의 평균 국어 점수를 구하세요.
  3. 데이터에서 국어 점수, 영어 점수, 수학 점수의 합이 가장 큰 월을 찾고, 해당 월의 데이터를 출력하세요.
  4. 데이터에서 국어 점수가 80점 이상인 데이터의 교사들 중에서 가장 많은 교사가 지도한 월의 정보를 출력하세요.
  5. 데이터에서 영어 점수가 90점 이상이고, 수학 점수가 80점 이상인 데이터의 교사들을 중복 없이 모두 출력하세요.
  6. 데이터에서 영어 점수가 80점 이상인 데이터 중에서 가장 높은 수학 점수를 가진 데이터의 교사들을 중복 없이 출력하세요.
  7. 데이터에서 수학 점수가 70점 이상인 데이터의 평균 영어 점수를 구하세요. 단, 영어 점수가 90점 이상인 데이터는 평균 계산에서 제외합니다.
  8. 데이터에서 수학 점수가 80점 이상인 데이터의 교사들을 사전 순으로 정렬한 후, 각 교사의 이름과 해당 교사가 지도한 월을 출력하세요.
  9. 데이터에서 국어 점수가 90점 이상이면서 영어 점수가 85점 이상인 데이터의 수학 점수 중에서 최소값을 구하세요.
  10. 데이터에서 국어 점수가 80점 이상인 데이터의 월별로 교사들을 그룹화하여 출력하세요.
  11. 데이터에서 수학 점수가 80점 이상인 데이터의 평균 국어 점수를 구하세요. 단, 국어 점수가 90점 이상인 데이터는 평균 계산에서 제외합니다.
  12. 데이터에서 수학 점수가 70점 이상인 데이터의 월별로 평균 국어 점수를 계산하여 내림차순으로 정렬한 후 출력하세요.
  13. 데이터에서 영어 점수가 90점 이상인 데이터의 교사들을 사전 순으로 정렬한 후, 중복 없이 출력하세요.
  14. 데이터에서 수학 점수가 80점 이상인 데이터 중에서 가장 낮은 국어 점수를 가진 데이터의 교사들을 출력하세요.
  15. 데이터에서 국어 점수가 80점 이상인 데이터의 평균 수학 점수를 구하세요. 단, 수학 점수가 90점 이상인 데이터는 평균 계산에서 제외합니다.
  16. 데이터에서 각 교사가 가장 많이 지도한 월을 찾고, 해당 월의 데이터에서 영어 점수의 합계를 구하세요.
  17. 데이터에서 국어 점수, 영어 점수, 수학 점수 중에서 가장 많은 점수가 몇 번 출현했는지 구하세요.
  18. 데이터에서 수학 점수가 가장 낮은 데이터와 가장 높은 데이터의 교사들을 사전 순으로 정렬하여 출력하세요.
  19. 데이터에서 영어 점수가 가장 높은 데이터의 월을 찾고, 해당 월의 데이터에서 교사들의 수를 구하세요.
  20. 데이터에서 수학 점수가 80점 이상인 데이터의 영어 점수 중에서 최대값과 최소값의 차이를 구하세요.
  21. 데이터에서 연도별로 가장 많은 월을 지닌 연도와 해당 월의 수를 출력하세요.
  22. 데이터에서 연도별로 평균 국어 점수가 가장 높은 연도를 찾고, 해당 연도의 월별 평균 국어 점수를 출력하세요.
  23. 데이터에서 가장 오래된 날짜와 가장 최근 날짜를 찾아서 출력하세요.
  24. 데이터에서 년도별로 국어 점수가 가장 많이 증가한 연도를 찾고, 해당 연도의 월별 국어 점수 증가 폭을 출력하세요.
  25. 데이터에서 가장 긴 연속된 날짜 범위를 찾아서 시작 날짜와 끝 날짜를 출력하세요.
  26. 데이터에서 월별로 국어, 영어, 수학 점수의 편차가 가장 큰 월을 찾고, 해당 월의 편차값을 출력하세요.
  27. 데이터에서 최고 점수와 최저 점수의 차이가 가장 큰 월을 찾고, 해당 월의 정보를 출력하세요.
  28. 데이터에서 연도별로 국어, 영어, 수학 점수의 상관 관계를 계산하고, 각 연도별로 가장 강한 상관 관계를 가진 과목의 정보를 출력하세요.
  29. 데이터에서 가장 많은 교사가 지도한 월의 평균 국어 점수와 평균 영어 점수의 차이가 가장 큰 월을 찾고, 해당 월의 정보를 출력하세요.
  30. 데이터에서 연도별로 국어, 영어, 수학 점수의 변동성이 가장 큰 연도를 찾고, 해당 연도의 각 과목별 변동성 값을 출력하세요.

기본문제

  1. 각 리스트에 인덱스 넣기
const result= data.map((item, idx) => {
  return { index: idx, ...item };
});

console.log(JSON.stringify(JSON.parse(result))); 
//{"index":0,"year":"2022","month":"3","koreaScore":"72","EnglishScore":"86","MathScore":"41","teacher":["김철수","John Smith","Emily Lee"]},
  1. "year"과 "month" 속성의 값을 추출하여 라벨로 사용
const labels = data.map(obj => obj.year + "-" + obj.month);
console.log(labels);

//Object.keys(obj)는 객체일때만 가능하다. 위에 data는 배열이므로 불가
const obj = { a: 1, b: 2, c: 3 };

const keys = Object.keys(obj);
console.log(keys); // 출력: ["a", "b", "c"]
  1. 벨류 값만 뽑아서 출력하시오.
const newArray = data.map(obj => {
  const { year, month, koreaScore, EnglishScore, MathScore, teacher } = obj;
  return [year, month, koreaScore, EnglishScore, MathScore, teacher];
});

console.log(newArray);
//[ ["2022", "3", "72", "86", "41", ["김철수", "John Smith", "Emily Lee"]],...

객체 분해 할당을 이용해서 속성 값을 개별 변수로 할당한 후 이들을 묶어서 배열로 반환

  1. 주어진 데이터에서 각 월별 평균 점수를 구하기 (소수 둘째자리까지 구하시오.)

객체분해할당 이용하기

const newArray = data.map(obj=>{
const {koreaScore,EnglishScore,MathScore, month  } = obj;
  const averageScore  = ((parseInt(koreaScore) + parseInt(EnglishScore) + parseInt(MathScore)) / 3).toFixed(2);
  return {month, averageScore};
}
);

console.log(newArray);
// {month: '3', averageScore: '66.33'}
// {month: '4', averageScore: '79.00'}

parseInt()와 Number()의 차이

let test = '10.12345';
parseInt(test); // 10
Number(test); // 10.12345
parseFloat(test); // 10.12345
  1. 데이터에서 가장 높은 국어 점수를 가진 월을 찾아 해당 월의 정보를 출력하기
let maxKoreaScore = 0;
let date = [];

data.forEach(obj => {
  const { year, month, koreaScore } = obj;
  const score = parseInt(koreaScore);

  if (score > maxKoreaScore) {
    maxKoreaScore = score;
    date = [`${year}-${month}`];
  } else if (score === maxKoreaScore) {
    date.push(`${year}-${month}`);
  }
});

console.log(date);
console.log(maxKoreaScore);
  1. 데이터에서 국어 점수가 70점 이상이고, 수학 점수가 80점 이상인 데이터의 개수 출력하기
//방법 1
let cnt = 0;
data.forEach(obj => {
  if (obj.koreaScore >= 70 && obj.MathScore >= 80) {
    cnt++;
  }
});

console.log(cnt);

//방법2
const filteredData = data.filter(obj => obj.koreaScore >= 70 && obj.MathScore >= 80);
const cnt = filteredData.length;

console.log(cnt);
  1. "IsPass"라는 라벨을 추가하고, 세 과목의 평균이 65점 미라면 False, 그렇지 않으면 True를 할당하기
const result = data.map(obj=>{
const {koreaScore,EnglishScore,MathScore} = obj;
  const averageScore  = ((parseInt(koreaScore) + parseInt(EnglishScore) + parseInt(MathScore)) / 3).toFixed(2);
	const isPass = averageScore >= 65;
    return {...obj, isPass : isPass};
});

console.log(result)
  1. 세 과목의 평균이 65점 이상이지만, 한 과목이라도 50점 이하 점수가 있다면 "IsPass"를 False로 변경하기
// 방법1
const result = data.map(obj => {
  const { koreaScore, EnglishScore, MathScore} = obj;
  const averageScore = ((parseInt(koreaScore) + parseInt(EnglishScore) + parseInt(MathScore)) / 3).toFixed(2);
  const isPass = averageScore >= 65 && koreaScore > 50 && EnglishScore > 50 && MathScore > 50;

  return { ...obj, isPass: isPass };
});

console.log(result);

// 가독성 - 방법2
const result = data.map(obj => {
  const { koreaScore, EnglishScore, MathScore, month } = obj;
  const scores = [koreaScore, EnglishScore, MathScore].map(score => parseInt(score));
  const sum = scores.reduce((sum, score) => sum + score, 0);
  const averageScore = (sum / scores.length).toFixed(2);
    
  const isPass = averageScore >= 65 && scores.every(score => score > 50);

  return { ...obj, isPass: isPass };
});

console.log(result);
  1. 2022년 시험 결과만 출력하기 (인덱스 포함)
const result = data.filter(obj => obj.year === '2022');
console.log(result);
  1. 2022년에 국어 점수가 80점 이상인 경우 출력하기
const result = data.filter(obj => obj.year === '2022' && parseInt(obj.koreaScore)>=80);
console.log(result);
  1. 2023년일 때 가장 높은 평균 점수를 기록한 필드 출력하기
let maxAverageScore = -Infinity;

const result = data.filter(obj => obj.year === '2023')
    .map(obj => {
        const { koreaScore, EnglishScore, MathScore } = obj;
        const scores = [koreaScore, EnglishScore, MathScore].map(score => parseInt(score));
        const sum = scores.reduce((acc, score) => acc + score, 0);
        const averageScore = (sum / scores.length).toFixed(2);

        if (averageScore >= maxAverageScore) {
            maxAverageScore = averageScore;
        }

        return { ...obj, averageScore };
    })
    .filter(obj => obj.averageScore === maxAverageScore);;

console.log(result);
  1. 2023년일 때 가장 낮 평균 점수를 기록한 필드 출력하기
let minAverageScore = Infinity;

const result = data.filter(obj => obj.year === '2023')
    .map(obj => {
        const { koreaScore, EnglishScore, MathScore } = obj;
        const scores = [koreaScore, EnglishScore, MathScore].map(score => parseInt(score));
        const sum = scores.reduce((acc, score) => acc + score, 0);
        const averageScore = (sum / scores.length).toFixed(2);

        if (averageScore < minAverageScore) {
            minAverageScore = averageScore;
        }

        return { ...obj, averageScore };
    })
    .filter(obj => obj.averageScore === minAverageScore);

console.log(result);
  1. "teacher"의 모든 값에 라벨과 옵션을 붙이기
  2. "teacher"의 수가 1명인 데이터만 출력하기
  3. 데이터에서 가장 많은 교사가 지도한 월의 정보 출력하기
  4. 각 리스트의 점수들의 합계 구하기
  5. 각 리스트에서 세 과목의 최고 점수 구하기
  6. 각 리스트에서 세 과목 중 최저 점수 구하기
  7. 각 리스트에서 세 과목 중 중간값 구하기
  8. 각 리스트에서 세 과목의 표준 편차 구하기
  9. 수학점수의 최소값 구하기
  10. 데이터에서 국어 점수가 90점 이상인 데이터의 인덱스를 구하세요.
  11. 각 데이터에서 교사들의 수를 구하세요.
  12. 데이터에서 수학 점수가 70점 이상인 데이터의 평균 국어 점수를 구하세요.
  13. 데이터에서 영어 점수가 80점 이상인 데이터의 수학 점수 합계를 구하세요.
  14. 데이터에서 국어 점수가 가장 높은 데이터의 월과 교사들을 출력하세요.
  15. 데이터에서 수학 점수가 60점 이하인 데이터의 영어 점수 평균을 구하세요.
  16. 데이터에서 영어 점수가 90점 이상인 데이터의 수학 점수 최소값을 구하세요.
  17. 데이터에서 국어 점수가 80점 이상인 데이터의 영어 점수 합계를 구하세요.
  18. 데이터에서 수학 점수가 80점 이상인 데이터의 평균 영어 점수를 구하세요.
  19. 데이터에서 국어 점수가 70점 이상인 데이터의 수학 점수 중에서 최대값을 구하세요.

심화문제

  1. 데이터에서 각 월별로 국어, 영어, 수학 점수의 평균과 표준편차를 구하세요.
  2. 데이터에서 수학 점수가 80점 이상이면서 국어 점수가 70점 이하인 데이터의 수학 점수를 10점씩 감소시킨 후, 해당 데이터의 평균 국어 점수를 구하세요.
  3. 데이터에서 국어 점수, 영어 점수, 수학 점수의 합이 가장 큰 월을 찾고, 해당 월의 데이터를 출력하세요.
  4. 데이터에서 국어 점수가 80점 이상인 데이터의 교사들 중에서 가장 많은 교사가 지도한 월의 정보를 출력하세요.
  5. 데이터에서 영어 점수가 90점 이상이고, 수학 점수가 80점 이상인 데이터의 교사들을 중복 없이 모두 출력하세요.
  6. 데이터에서 영어 점수가 80점 이상인 데이터 중에서 가장 높은 수학 점수를 가진 데이터의 교사들을 중복 없이 출력하세요.
  7. 데이터에서 수학 점수가 70점 이상인 데이터의 평균 영어 점수를 구하세요. 단, 영어 점수가 90점 이상인 데이터는 평균 계산에서 제외합니다.
  8. 데이터에서 수학 점수가 80점 이상인 데이터의 교사들을 사전 순으로 정렬한 후, 각 교사의 이름과 해당 교사가 지도한 월을 출력하세요.
  9. 데이터에서 국어 점수가 90점 이상이면서 영어 점수가 85점 이상인 데이터의 수학 점수 중에서 최소값을 구하세요.
  10. 데이터에서 국어 점수가 80점 이상인 데이터의 월별로 교사들을 그룹화하여 출력하세요.
  11. 데이터에서 수학 점수가 80점 이상인 데이터의 평균 국어 점수를 구하세요. 단, 국어 점수가 90점 이상인 데이터는 평균 계산에서 제외합니다.
  12. 데이터에서 수학 점수가 70점 이상인 데이터의 월별로 평균 국어 점수를 계산하여 내림차순으로 정렬한 후 출력하세요.
  13. 데이터에서 영어 점수가 90점 이상인 데이터의 교사들을 사전 순으로 정렬한 후, 중복 없이 출력하세요.
  14. 데이터에서 수학 점수가 80점 이상인 데이터 중에서 가장 낮은 국어 점수를 가진 데이터의 교사들을 출력하세요.
  15. 데이터에서 국어 점수가 80점 이상인 데이터의 평균 수학 점수를 구하세요. 단, 수학 점수가 90점 이상인 데이터는 평균 계산에서 제외합니다.
  16. 데이터에서 각 교사가 가장 많이 지도한 월을 찾고, 해당 월의 데이터에서 영어 점수의 합계를 구하세요.
  17. 데이터에서 국어 점수, 영어 점수, 수학 점수 중에서 가장 많은 점수가 몇 번 출현했는지 구하세요.
  18. 데이터에서 수학 점수가 가장 낮은 데이터와 가장 높은 데이터의 교사들을 사전 순으로 정렬하여 출력하세요.
  19. 데이터에서 영어 점수가 가장 높은 데이터의 월을 찾고, 해당 월의 데이터에서 교사들의 수를 구하세요.
  20. 데이터에서 수학 점수가 80점 이상인 데이터의 영어 점수 중에서 최대값과 최소값의 차이를 구하세요.
  21. 데이터에서 연도별로 가장 많은 월을 지닌 연도와 해당 월의 수를 출력하세요.
  22. 데이터에서 연도별로 평균 국어 점수가 가장 높은 연도를 찾고, 해당 연도의 월별 평균 국어 점수를 출력하세요.
  23. 데이터에서 가장 오래된 날짜와 가장 최근 날짜를 찾아서 출력하세요.
  24. 데이터에서 년도별로 국어 점수가 가장 많이 증가한 연도를 찾고, 해당 연도의 월별 국어 점수 증가 폭을 출력하세요.
  25. 데이터에서 가장 긴 연속된 날짜 범위를 찾아서 시작 날짜와 끝 날짜를 출력하세요.
  26. 데이터에서 월별로 국어, 영어, 수학 점수의 편차가 가장 큰 월을 찾고, 해당 월의 편차값을 출력하세요.
  27. 데이터에서 최고 점수와 최저 점수의 차이가 가장 큰 월을 찾고, 해당 월의 정보를 출력하세요.
  28. 데이터에서 연도별로 국어, 영어, 수학 점수의 상관 관계를 계산하고, 각 연도별로 가장 강한 상관 관계를 가진 과목의 정보를 출력하세요.
  29. 데이터에서 가장 많은 교사가 지도한 월의 평균 국어 점수와 평균 영어 점수의 차이가 가장 큰 월을 찾고, 해당 월의 정보를 출력하세요.
  30. 데이터에서 연도별로 국어, 영어, 수학 점수의 변동성이 가장 큰 연도를 찾고, 해당 연도의 각 과목별 변동성 값을 출력하세요.
  31. some(): 데이터에서 영어 점수가 80점 이상이고, 수학 점수가 70점 이하인 데이터가 있는지 확인할 수 있습니다.
  32. find(): 데이터에서 국어 점수가 80점 이상이고, 영어 점수가 85점 이상인 첫 번째 데이터를 찾을 수 있습니다.
  33. forEach(): 각 데이터의 월별 수학 점수를 출력하거나 월별 평균을 계산할 수 있습니다.
  34. sort(): 데이터를 수학 점수에 따라 정렬할 수 있습니다.
  35. slice(): 데이터에서 특정 범위의 월에 해당하는 데이터를 추출할 수 있습니다.
  36. includes(): 데이터에 특정 월의 정보가 포함되어 있는지 확인할 수 있습니다.
  37. reduceRight(): 데이터를 거꾸로 순회하여 연산을 수행할 수 있습니다.
  38. flat(): 데이터에 중첩된 배열이 있을 경우 평탄화하여 단일 배열로 만들 수 있습니다.
  39. 데이터에서 영어 점수가 90점 이상이거나 수학 점수가 80점 이상인 데이터가 있는지 확인해보세요.
  40. find(): 데이터에서 수학 점수가 70점 이하인 첫 번째 데이터를 찾아보세요.
  41. forEach(): 각 데이터의 평균 점수를 계산하고, 평균 점수가 70점 이상인 데이터만 출력해보세요.
  42. sort(): 데이터를 국어 점수에 따라 내림차순으로 정렬해보세요.
  43. slice(): 데이터에서 인덱스 5부터 인덱스 10까지의 데이터를 추출해보세요.
  44. includes(): 데이터에 "Sophia Park"이라는 교사가 포함되어 있는지 확인해보세요.
  45. reduceRight(): 데이터의 수학 점수를 모두 더해서 합계를 계산해보세요.
  46. flat(): 데이터에 있는 중첩된 배열을 평탄화하고 단일 배열로 만들어보세요.
  47. some(): 데이터에서 국어 점수가 90점 이상이거나 영어 점수가 80점 이상인 데이터가 있는지 확인해보세요.
  48. forEach(): 각 데이터의 월과 교사들을 출력해보세요.