In the common subject "Information" of the new high school curriculum guidelines, "Information I" is defined as a compulsory subject and "Information II" is defined as an elective subject. Along with this, the teaching materials for teacher training of "Information I" and "Information II" are available on the website of the Ministry of Education, Culture, Sports, Science and Technology. I think this teaching material for teacher training is excellent as an introductory text for learning information technology even if you are not a high school student, but there are many languages used to explain implementation examples, python and R, and it is one of "Information I". Other languages (JavaScript, VBA, Dolittle, swift) are listed only in the department area, and I got the impression that there is no sense of unity. It is a teaching material written for teaching teachers of various skills and for learning of high school students, so I think it is good to explain in various languages, but there was a point to be worried about.
――In the area of "Computer and programming" of "Information I", there is an explanation in the implementation example of python, JavaScript, VBA, Dolittle, swift, but in "Information II", it is mainly explained in python, R. .. --The standard number of credits for "Information I" and "Information II" in high school is 2 credits each. I'm not an education expert, so I don't know the details, but can I learn many programming languages in the class hours converted to this number of credits? (Problem of learning cost) ―― "Information II" As a development of the learning content of information systems and programming, when trying to create a proper application while actually learning the process of system development, python, JavaScript, VBA, It looks good around swift, but what about domain-specific languages such as R? ――When you take a bird's-eye view of "Information I" and "Information II" as a whole, it seems that they are biased toward the data science field. ――In the item of data science, we have gone into deep learning. Which is better, python or R, when explaining the contents up to deep learning? ――Are you increasing R in consideration of the connection between high school and university? Are many university professors using R for data science? I don't understand why I can't explain with python alone.
From the above, I came to the conclusion that "Isn't it better to implement and explain everything in python?", And I have mainly written articles that have been rewritten from R to python.
Although the introduction has become long, this article is a compilation of implementation examples and explanations in teacher training materials for reference when trying to learn based on python.
Please note that the materials written by other people and the articles written by yourself are mixed and summarized.
ipython Colaboratory - Google Colab
Teaching materials: [High school information department "Information I" teacher training materials (main part): Ministry of Education, Culture, Sports, Science and Technology](https://www.mext.go.jp/a_menu/shotou/zyouhou/detail/1416756.htm "High school Information Department "Information I" Teacher Training Materials (Main Volume): Ministry of Education, Culture, Sports, Science and Technology ")
No implementation example
Explanation: [High School Information Department Information I] [High School Information Department Information I] Teacher training materials: python implementation of Huffman method --Qiita Source code: https://colab.research.google.com/gist/ereyester/6a37027afa322d1b76e72b774aa406e8/jouhou1_2_6_huffman.ipynb
No implementation example
Many of the contents compliant with "Chapter 3 Computers and Programming" are quoted from the following sites.
Explanation & Source Code: [Program Structure, Sequential Processing, Calculation-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials](https://colab.research.google.com/drive/1p9pSDwnozHR7tYctQuNFsuCTo0fLcDch?usp=sharing Program Structure, Sequential Processing, Calculation-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials) → See "Overflow and error"
Can be browser-based https://python.microbit.org/v/2.0 Is recommended. Execute the source code of the teaching materials by copying.
Explanation & Source Code: [Program Structure, Sequential Processing, Calculation-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials](https://colab.research.google.com/drive/1p9pSDwnozHR7tYctQuNFsuCTo0fLcDch?usp=sharing Program Structure, Sequential Processing, Calculation-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials) → See "Sequential processing"
Explanation & Source Code: Branch Processing --IPSJ MOOC IPSJ Public Teaching Materials → See "Branch processing (2 branches)"
Explanation & Source Code: Iterative Processing-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials → See "Iterative processing (for)"
Explanation & Source Code: Iterative Processing-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials → See "Combination of Iterative Processing and Branch Processing"
Explanation & Source Code: Applied Programming 1 --IPSJ MOOC Information Processing Society of Japan Public Teaching Materials → See "List"
Explanation & Source Code: Applied Programming 1 --IPSJ MOOC Information Processing Society of Japan Public Teaching Materials → See "List"
Explanation & Source Code: Applied Programming 1 --IPSJ MOOC Information Processing Society of Japan Public Teaching Materials → See "Random numbers"
Explanation & Source Code: [Applied Programming 2-IPSJ MOOC IPSJ Public Teaching Materials](https://colab.research.google.com/drive/11C6Z_4cX9OW8heGiyGGQJuaqelss_UWs?usp=sharing "Applied Programming 2-IPSJ MOOC IPSJ" Public teaching materials ") → See "Function"
Explanation & Source Code: [Applied Programming 2-IPSJ MOOC IPSJ Public Teaching Materials](https://colab.research.google.com/drive/11C6Z_4cX9OW8heGiyGGQJuaqelss_UWs?usp=sharing "Applied Programming 2-IPSJ MOOC IPSJ" Public teaching materials ") → See "Web API"
Explanation & Source Code: List and Built-in Functions-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials → See "Lists and built-in functions"
Explanation & Source Code: [Basic Search-Linear Search-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials](https://colab.research.google.com/drive/1OnJiQZ0Wh0iklECTZcajv4c2D5zLheAK?usp=sharing "Basic Search-Linear Search" --IPSJ MOOC Information Processing Society of Japan Public Teaching Materials ") → See "Linear search"
Explanation & Source Code: [Basic Search-Binary Search-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials](https://colab.research.google.com/drive/1gjH_OxYZh_M3g03OWq6zIZIotBxVFrzW?usp=sharing "Basic Search-Binary Search" --IPSJ MOOC Information Processing Society of Japan Public Teaching Materials ") → See "Binary Search"
Explanation & Source Code: Basic Search-Comparison of Linear Search and Binary Search-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials → See "Comparison of linear search and binary search"
Explanation & Source Code: [Basic Sort-Selective Sort-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials](https://colab.research.google.com/drive/1ICcRAzGXZOpjzBJkOMZ2K7IibCtbJMva?usp=sharing "Basic Sort-Selective Sort" --IPSJ MOOC Information Processing Society of Japan Public Teaching Materials ") → See "Selection sort"
Explanation & Source Code: [Basic Sort-Quicksort-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials](https://colab.research.google.com/drive/12WQ2a8LwU8V_L_05Y9AVt8iGMRAPI8xE?usp=sharing "Basic Sort-Quicksort" --IPSJ MOOC Information Processing Society of Japan Public Teaching Materials ") → See "Quicksort implementation example"
Explanation & Source Code: Basic Sort-Comparison of Selection Sort and Quicksort-IPSJ MOOC Information Processing Society of Japan Public Teaching Materials → See "4-2. Basic Sort-Comparison of Selection Sort and Quicksort"
Refer to the implementation example (python) described in the teaching material (TBD)
Refer to the implementation example (python) described in the teaching material (TBD)
No implementation example
No implementation example
No implementation example
Refer to the implementation example (python) described in the teaching material (TBD)
Refer to the implementation example (Excel) described in the teaching materials (TBD)
Explanation: [High School Information Department Information I] Teaching materials for teacher training: Morphological analysis by MeCab and how to make WordCloud (python) --Qiita Source code: https://colab.research.google.com/gist/ereyester/5f1a93311f434b08f1e57fda4fb5398f/jouhou1_4_23.ipynb
Explanation: [High School Information Department Information I] Teacher Training Materials: Data Format and Visualization (python) --Qiita Source code: https://colab.research.google.com/gist/ereyester/68b781bd6668005c157b300c5bf22905/jouhou1_4_24.ipynb
Teaching materials: [High school information department "Information II" teacher training teaching materials (main part): Ministry of Education, Culture, Sports, Science and Technology](https://www.mext.go.jp/a_menu/shotou/zyouhou/detail/mext_00742.html "High school Information Department "Information II" Teacher Training Materials (Main Volume): Ministry of Education, Culture, Sports, Science and Technology ")
No implementation example
No implementation example
Refer to the implementation example (python) described in the teaching material.
Refer to the implementation example (python) described in the teaching material.
Explanation: [High School Information Department Information II] Teaching materials for teacher training: Multiple regression analysis and model determination (python) --Qiita Source code: https://colab.research.google.com/gist/ereyester/5c6e5a9b8aa55ba826c7c96a4daf7814/jouhou2_3_13_python.ipynb
Explanation: Main component analysis with python (Scikit-learn version, pandas & numpy version) ([High school information department information II] teaching materials for teacher training) --Qiita Source code: https://colab.research.google.com/gist/ereyester/3c2173eb61cbcd64b61f23b3d4d6480c/jouhou2_3_14.ipynb
Explanation: [Binary classification by decision tree by python ([High school information department information II] teaching materials for teacher training) --Qiita](https://qiita.com/ereyester/items/6db7065d72d0f5f551e0 "Binary classification by decision tree by python" Classification ([High School Information Department Information II] Teaching materials for teacher training) --Qiita ") Source code: https://colab.research.google.com/gist/ereyester/dfb4fd6fb3e58c5d0539866f7e2622b4/jouhou2_3_15.ipynb
Explanation: [classification by k-nearest neighbor method (kNN) by python ([High school information department information II] teaching materials for teacher training) --Qiita](https://qiita.com/ereyester/items/7b3c42bc6051482de96e "k- by python" Classification by the neighborhood method (kNN) ([High school information department information II] teaching materials for teacher training) --Qiita ") Source code: https://colab.research.google.com/gist/ereyester/01237a69f6b8ae73c55ccca33c931ade/jouhou2_3_15_2.ipynb
Refer to the implementation example (python) described in the teaching material.
Refer to the implementation example (python) described in the teaching material.
Explanation: [Text mining by word2vec etc. by python ([High school information department information II] teaching materials for teacher training) --Qiita](https://qiita.com/ereyester/items/2b87d7aa191e2c5a923d "Text mining by word2vec etc. by python (https://qiita.com/ereyester/items/2b87d7aa191e2c5a923d" [High School Information Department Information II] Teaching materials for teacher training) --Qiita ") Source code: https://colab.research.google.com/gist/ereyester/101ae0da17e747b701b67fe9fe137b84/jouhou2_3_18.ipynb
Explanation: [Object detection using YOLO (python) ([High school information department information II] teaching materials for teacher training) --Qiita](https://qiita.com/ereyester/items/4cd0dc3a449369e7f1f4 "Object detection using YOLO" (Python) ([High School Information Department Information II] Teaching materials for teacher training) --Qiita ") Source code: https://colab.research.google.com/gist/ereyester/46a25e70c866c581320a66a77153aa2d/jouhou2_3_18_2.ipynb
No implementation example
Explanation & Source Code: [Information II Teacher Training Material Chapter 4 .ipynb](https://colab.research.google.com/drive/1r26wcPi3jcVfe0BhzbyTj0-oGhi8AgBC Information II Teacher Training Material Chapter 4.ipynb ") → See "Learning 23: Creation and testing of divided systems"
Explanation & Source Code: [Information II Teacher Training Material Chapter 4 .ipynb](https://colab.research.google.com/drive/1r26wcPi3jcVfe0BhzbyTj0-oGhi8AgBC Information II Teacher Training Material Chapter 4.ipynb ") → See "Learning 24: Coupling and testing of divided systems"
Explanation & Source Code: [Information II Teacher Training Material Chapter 4 .ipynb](https://colab.research.google.com/drive/1r26wcPi3jcVfe0BhzbyTj0-oGhi8AgBC Information II Teacher Training Material Chapter 4.ipynb ") → See "Learning 25 Information System Evaluation / Improvement"
No implementation example
No implementation example
Explanation: [Data analysis by clustering using k-means method (python) ([High school information department information II] teaching materials for teacher training) --Qiita](https://qiita.com/ereyester/items/bc251ea3c329a38b5b82 "k" -Data analysis by clustering using the means method (python) ([High school information department information II] teaching materials for teacher training) --Qiita ") Source code: https://colab.research.google.com/gist/ereyester/ce9370e3022f05f4d7548a8ccaed33cc/jouhou2_5_3.ipynb
No implementation example
The (TBD) section is likely to be updated by the IPSJ MOOC Information Processing Society of Japan.
Recommended Posts