精华内容
下载资源
问答
  • [JAVA]爬取百度关于关键字的诗句 寒假不想写作业,学完java基础的我手痒痒,于是就有了这篇菜逼吧初作 仅供学习和交流,严禁用于商业用途 先要获得有哪些关键字可以爬,在此之前,写一个Get函数,来获得website上的...

    [JAVA]爬取百度关于关键字的诗句


    寒假不想写作业,学完java基础的我手痒痒,于是就有了这篇菜逼吧初作
    仅供学习和交流,严禁用于商业用途


    先要获得有哪些关键字可以爬,在此之前,写一个Get函数,来获得website上的内容

    public static String doGet(String website) {
       HttpURLConnection httpURLConnection = null;
       InputStream inputStream = null;
       BufferedReader bufferedReader = null;
       String result = null;
    
       try {
           URL url = new URL(website);
           httpURLConnection = (HttpURLConnection)url.openConnection();
           httpURLConnection.setRequestMethod("GET");  //设置连接方式0
           httpURLConnection.setConnectTimeout(3000);  //超时时间3秒
           httpURLConnection.setReadTimeout(6000);     //设置读取时间6秒
           httpURLConnection.connect();
           if (httpURLConnection.getResponseCode() == 200){
               inputStream = httpURLConnection.getInputStream();
               bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
               StringBuffer stringBuffer = new StringBuffer();
               String temp = null;
               while ((temp = bufferedReader.readLine()) != null){
                   stringBuffer.append(temp);
                   stringBuffer.append("\r\n");
               }
               result = stringBuffer.toString();
           }
       } catch (MalformedURLException e) {
           e.printStackTrace();
       } catch (IOException e) {
           e.printStackTrace();
        } finally {
            if (null != bufferedReader){
                try {
                    bufferedReader.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (null != inputStream){
                try {
                    inputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            httpURLConnection.disconnect();
        }
    
        return result;
    }
    

    然后书写获取关键字的代码
    这里website的stat0、subtitle、query随便写的,不是重点
    返回一个集合,记录得到的关键字

    public static ArrayList<String> getTypes() {
        ArrayList<String> arrayList = new ArrayList<>();
        StringBuffer website = new StringBuffer("http://opendata.baidu.com/api.php?from_mid=1&format=json&ie=utf-8&oe=utf-8&stat0=风&subtitle=含有山的诗句&query=含有山的诗句&rn=6&pn=0&resource_id=28239&cb=jQuery110208838176116082497_");
        website.append(System.currentTimeMillis());
        website.append("&_=");
        website.append(System.currentTimeMillis());
    
        String result = doGet(website.toString());
        result = result.substring(result.indexOf("{"), result.lastIndexOf("}") + 1);
    
        JSONObject jsonObject = null;
        JSONArray jsonArray = null;
    
        try {
            jsonObject = new JSONObject(result);
            jsonArray = jsonObject.getJSONArray("data").getJSONObject(0).getJSONObject("OtherInfo").getJSONArray("stat0");
            for (int i = 0; i < jsonArray.length(); i++){
                arrayList.add(jsonArray.getJSONObject(i).getString("sa"));
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }
        return arrayList;
    }
    

    康康网页,再康康website,可知rn指的是一页内的句数,pn指的是当前页码-1

    得到这些关键信息后,书写代码获得一页的所有诗句
    这里我通过临时变量来记录内容,方便在使用时直接用[绝对不是因为懒 ]
    如果遇到异常,会直接跳到下一页,不记录改业内容,碍于我的强迫症,就写了一个do while,来避免出现跳页的问题

    private static StringBuffer TempDatas = new StringBuffer();
    
    public static void getContents(int page, String type) {
        String result = null;
        String temp = null;
        boolean isWhile = false;
        do {
            StringBuffer website = new StringBuffer("http://opendata.baidu.com/api.php?from_mid=1&format=json&ie=utf-8&oe=utf-8&stat0=");
            website.append(type.substring(type.indexOf("有") + 1, type.indexOf("的")));
            website.append("&subtitle=含有山的诗句&query=含有山的诗句&rn=6&pn=");
            website.append(page);
            website.append("&resource_id=28239&cb=jQuery1102045186558424078416_");
            website.append(System.currentTimeMillis());
            website.append("&_=");
            website.append(System.currentTimeMillis());
            System.out.println(website);
            result = doGet(website.toString());
            System.out.println(result);
            JSONObject jsonObject = null;
            JSONArray jsonArray = null;
            try {
                result = result.substring(result.indexOf("{"), result.lastIndexOf("}") + 1);
                jsonObject = new JSONObject(result).getJSONArray("data").getJSONObject(0);
                jsonArray = jsonObject.getJSONArray("disp_data");
                int count = 0;
                while (count < 6) {
                    temp = jsonArray.getJSONObject(count).getString("ename");       //诗句
                    temp += "————";
                    temp += jsonArray.getJSONObject(count).getJSONObject("author").getString("text");       //作者
                    System.out.println(temp);
                    TempDatas.append(temp);
                    TempDatas.append("\r\n");
                    count++;
                }
                isWhile = false;
            } catch (JSONException e) {
                isWhile = true;
                e.printStackTrace();
            } catch (StringIndexOutOfBoundsException e) {
                isWhile = true;
                e.printStackTrace();
            } catch (NullPointerException e) {
                isWhile = true;
                e.printStackTrace();
            }
        }while (isWhile);
    }
    

    做完所有的准备工作,就可以愉快的输出了
    这个地方可以通过多线程的方式优化[大概吧],但是我现在还是个菜逼吧,就没写[其实是因为多线程会出现输出混乱的情况,不会解决 ]

    private final static int NUMBER_OF_SENTENCES = 1080;   //一项的句数-6的倍数
    private final static int ONCE_OF_WRITING = 360;        //一次写入句数-6的倍数
    public static void output(File file, String type, boolean isAppend){
       try {
           if (!file.exists()) {
               file.createNewFile();
           } else if (!isAppend){
               file.delete();
               file.createNewFile();
           }
       } catch (IOException e) {
           e.printStackTrace();
       }
    
       write(file, type + "\r\n");         //写入含有-的古诗并换行
    
       int count = 0;
       while(true) {
           getContents(count, type);
           count = count + 6;
           if (count % ONCE_OF_WRITING == 0) {     //当句数是ONCE_OF_WRITING的倍数时,写入一次
               write(file, TempDatas.toString());
               TempDatas.delete(0, TempDatas.length());
           }
           if (count % NUMBER_OF_SENTENCES == 0) { //当达到NUMBER_OF_SENTENCES时,停止该项
               return;
           }
       }
    }
    public static void write(File file, String content){
    
        FileOutputStream fileOutputStream = null;
        BufferedOutputStream bufferedOutputStream = null;
        try {
            if (!file.exists()) file.createNewFile();
            fileOutputStream = new FileOutputStream(file, true);
            bufferedOutputStream = new BufferedOutputStream(fileOutputStream);
            bufferedOutputStream.write(content.getBytes("utf-8"));
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                bufferedOutputStream.close();
                fileOutputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    

    main函数写完,完工

    public static void main(String[] args) {
    
            ArrayList<String> typeArrayList = getTypes();
            ListIterator<String> listIterator = typeArrayList.listIterator();
            int index = 0;
            while(listIterator.hasNext()){
                typeArrayList.set(index, "含有" + listIterator.next() + "的诗句");
                index++;
            }
    
            System.out.println(typeArrayList);
            ArrayList<File> fileArrayList = new ArrayList<>();
            listIterator = typeArrayList.listIterator();
            index = 0;
            while (listIterator.hasNext()) {
                listIterator.next();
                fileArrayList.add(new File(FilePath + typeArrayList.get(index) + ".txt"));
                index++;
            }
    
    
            ArrayList<Thread> threads = new ArrayList<>();
    
            listIterator = typeArrayList.listIterator();
            index = 0;
            while (listIterator.hasNext()) {
                listIterator.next();
                output(fileArrayList.get(index), typeArrayList.get(index), false);
                index++;
            }
        }
    

    鬼知道这两百多行的代码我是怎么做到写了两天的

    展开全文
  • 演讲稿关于朋友精选600字 不论是多情的诗句,漂亮的*,还是闲暇的快乐,什么都不能代替亲密的友情。这是俄-国著名作家普希金说过的一句话。在我的心中,朋友就似一本厚重的书,富有内涵,让人百读不厌。下面给大家...
  • 关于传统文化的800字高一作文赏析 关于传统文化的高一作文篇1 自古以来中华文化博大精神,从小学习的书法,长大背诵的唐诗宋词,充满我们生活的华丽服饰,都存在着文化这一高深的内涵,我们应传承中华民族伟大的...
  •  不论是多情的诗句,漂亮的*,还是闲暇的快乐,什么都不能代替亲密的友情。这是俄-国著名作家普希金说过的一句话。朋友,你们可曾想过,友谊诚可贵,也是正常心理的需要。一位著名的英国作家作过这么一个比喻:...
  • 初三的演讲稿关于励志最新5篇 清代郑板桥有几句源远流长的诗句“咬定青山不放松,立根原在破岩中。千磨万击还坚劲,任尔东西南北风”如果我们在人生的追求中能“咬定”目标“不放松”,“任凭东西南北风”的“千磨万...
  •  舞动的青春讲话稿1 不明白因为什么,越是入了深秋,太阳反而越温暖起来,让人不禁想起“自古逢秋悲寂寥,我言秋日胜春朝”的诗句来了。 这一个星期有点特殊,为了迎接下周三的检查,全校都在筹备,而我们班要...
  • 关于诚信的演讲稿最新范文5篇 翻开我们中华民族五千年的文明史,会发现,以诚实守信为做人根本的故事比比皆是。今天小编就给大家整理了关于诚信的演讲稿,希望对大家的工作和学习...”这是李白《侠客行》的诗句,形...
  • 3分钟演讲稿坚持600字集锦 清代郑板桥有几句源远流长的诗句“咬定青山不放松,立根原在破岩中。千磨万击还坚劲,任尔东西南北风”如果我们在人生的追求中能“咬定”目标“不放松”,“任凭东西南北风”的“千磨万击...
  • 1、根据《关于做好2020年城乡居民基本医疗保障工作通知》,2020年城乡居民基本医疗保险人均财政补助标准新增30元,达到每人每年不低于____;则上个人缴费标准同步提高30元,达到每人每年280元。 A、250元 B、280元...

    21年2月19日新增30题

    1、根据《关于做好2020年城乡居民基本医疗保障工作的通知》,2020年城乡居民基本医疗保险人均财政补助标准新增30元,达到每人每年不低于____;则上个人缴费标准同步提高30元,达到每人每年280元。

    A、250元

    B、280元

    C、520元

    D、550元

    正确答案:D

    2、诗句“湖月照我影,送我至剡溪中”的“剡溪”位于现在的____省境内。

    A、江西

    B、福建

    C、江苏

    D、浙江

    正确答案:D

    3、根据《中华人民共和国劳动合同法》,用人单位违反集体合同,侵犯职工劳动权益的,____可以依法要求用人单位承担责任。

    A、法院

    B、检察院

    C、工会

    正确答案:C

    4、诗句“蓬莱文章建安骨,中间小谢又清发”中的“小谢”是指____。

    A、谢灵运

    B、谢朓

    C、谢安

    正确答案:B

    5、根据《关于完善城乡居民高血压糖尿病门诊用药保障机制的指导意见》,对“两病(高血压、糖尿病)参保患者门诊发生的降血压、降血糖药品费用由统筹基金支付,政策范围内支付比例要达到____以上。

    A、30%

    B、50%

    正确答案:B

    6、根据《国务院关于整合城乡居民基本医疗保险制度的意见》,整合建立城乡居民医保制度,我国坚持多渠道筹资,继续实行____的筹资方式,鼓励集体、单位或其他社会经济组织给予扶持或资助。

    A、全部由个人缴纳

    B、全部由政府补贴

    C、个人缴费与政府补助相结合为主

    正确答案:C

    7、留下“梅妻鹤子”佳话的诗人是____。

    A、温庭筠

    B、林逋

    C、贾岛

    D、姚合

    正确答案:B

    8、根据《中华人民共和国社会保险法》医疗费用依法应当由第三人负担,第三人不支付或者无法确定第三人的,由基本医疗保险基金先行支付。基本医疗保险基金先行支付后,____向第三人追偿。

    A、无权

    B、有权

    正确答案:B

    9、中国国际高新技术成果交易会(简称高交),是经国务院批准举办的高新技术成果展示与交易的专业展会,每年的11月16日至21日在____市举行。

    A、北京

    B、上海

    C、广州

    D、深圳

    正确答案:D

    10、根据《中华人民共和国劳动合同法》,劳动者提前____以书面形式通知用人单位,可以解除劳动合同。

    A、十五日

    B、三十日

    C、六十日

    正确答案:B

    11、唐代诗人中,被称为“七绝圣手”的是____。

    A、岑参

    B、高适

    C、王之涣

    D、王昌岭

    正确答案:D

    12、大鹏所城,全称为“大鹏守御千户所城”,位于深圳市大鹏新区,始建于____朝,是明清两代中国海防的军事要塞。

    A、唐

    B、宋

    C、元

    D、明

    正确答案:D

    13、根据《中华人民共和国社会保险法》,个人跨统筹地区就业的,其基本医疗保险关系____,缴费年限累计计算。

    A、随本人转移

    B、不随本人转移

    正确答案:A

    14、《九月九日忆山东兄弟》一诗中的“山东”是指今天的____。

    A、太行山以东

    B、今山东省

    C、华山以东

    正确答案:C

    15、诗句“露从今夜白,月是故乡明”出自____。

    A、李白《把酒问月》

    B、张九岭《望月怀远》

    C、杜甫《月夜忆舍弟》

    D、孟浩然《宿建德江》

    正确答案:C

    16、根据《中华人民共和国社会保险法》,失业人员应当缴纳的基本医疗保险费从失业保险基金中支付,个人____基本医疗保险费。

    A、不缴纳

    B、缴纳

    正确答案:A

    17、根据《中华人民共和国社会保险法》,职工应当参加生育保险,由____按照国家规定缴纳生育保险费,职工不缴纳生育保险费。

    A、职工个人

    B、用人单位

    正确答案:B

    18、根据《中华人民共和国劳动合同法》,劳动者在试用期的工资不得低于本单位相同岗位最低档工资或者动合同约定工资的百分之____,并不得低于用人单位所在地的最低工资标准。

    A、五十

    B、六十

    C、八十

    正确答案:C

    19、诗句“三顾频烦天下计,两朝开济老臣心”刻画的人物是____。

    A、房玄龄

    B、狄仁杰

    C、诸葛亮

    D、曹操

    正确答案:C

    20、根据《中华人民共和国劳动合同法》____依法维护劳动者的合法权益,对用人单位履行劳动合同、集体合同的情况进行监督。

    A、法院

    B、工会

    C、检察院

    D、残联

    正确答案:B

    21、深圳市的市花是____。

    A、木棉花

    B、紫荆花

    C、簕(lè)杜鹃

    正确答案:C

    22、全国首个5G独立组网全覆盖的城市是____。

    A、北京

    B、上海

    C、广州

    D、深圳

    正确答案:D

    23、根据《国务院办公厅关于全面推进生育保险和职工基本医疗保险合并实施的意见》,职工生育期间的生育保险待遇____。

    A、降低

    B、不变

    正确答案:B

    24、根据《工伤保险条例》,用人单位应当按时缴纳工伤保险费,职工个人也要缴纳工伤保险费。这种说法是____的。

    A、正确

    B、错误

    正确答案:B

    25、《深圳建设中国特色社会主义先行示范区综合改革试点实施方案(2020-2025年)》指出,要完善高水平开放型经济体制,充分发挥中国(广东)自由贸易试验区深圳____片区全面深化改革和扩大开放试验田作用,形成更多可复制可推广的制度创新成果。

    A、国际商务服务

    B、高端

    C、前海蛇口

    D、临港

    正确答案:C

    26、下列诗句中与“送别”无关的是____。

    A、劝君更尽一杯酒,西出阳关无故人

    B、故人西辞黄鹤楼,烟花三月下扬州

    C、洛阳亲友如相问,一片冰心在玉壶

    D、今人不见古时月,今月曾经照古人

    正确答案:D

    27、诗句“云想衣裳花想容,春风拂槛露华浓”描写的历史人物是____。

    A、王昭君

    B、西施

    C、貂蝉

    D、杨贵妃

    正确答案:D

    28、根据《中华人民共和国劳动合同法》,劳动者在试用期内提前____通知用人单位,可以解除劳动合同。

    A、一日

    B、三日

    C、七日

    正确答案:B

    29、根据《流动就业人员基本医疗保障关系转移接续暂行办法》,城乡各类流动就业人员按照现行规定相应参加城镇职工基本医疗保险、城镇居民基本医疗保险或新型农村合作医疗,____同时参加和重复享受待遇。

    A、可以

    B、不得

    正确答案:B

    30、根据《中华人民共和国社会保险法》参加职工基本医疗保险的个人,达到法定年龄时累计缴费达到国家规定年限的,退休后____缴纳基本医疗保险费,按照国家规定享受基本医疗保险待遇,未达到国家规定年限的,可以缴费至国家规定年限。

    A、继续

    B、不再

    正确答案:B

    21年2月14日新题

    1、我国著名画家、文学家、艺术教育家____,是中国现代漫画事业的先驱,童趣是他时常写作入画的素材,例如《阿宝赤膊》《蚂蚁搬家》《种瓜得瓜》等作品。
    丰子恺

    2、《仓颉传说》是古老的汉族民间传说故事。仓颉造字的故事出于____时期,距今已有五千年历史。(出题单位:中共白水县委宣传部 推荐单位:渭南学习平台)
    炎黄

    3、“学习强国”的“虚拟货币”是____,可以用其在“强国商城”兑换三大电信商的流量包、各大影院的电影票券、新华书店网上书城的图书券、“学习强国”上各种农副产品的助农券等。
    点点通

    21年2月6日新题

    1、下列哪位不是印象派画家?____

    A、雷诺阿

    B、马奈

    C、塞尚

    D、毕加索

    正确答案:D

    1、壮族姑娘出嫁为什么要穿黑色嫁衣?____

    A、表示喜庆、欢乐

    B、表示不忘记父母的养育之恩

    正确答案:A

    展开全文
  • 书山有路勤为径,学海无涯苦作舟!!这两句诗句是否应景了正在学习途中Python的你呢?...小编是用5个现在火热的部分举个例:一 游戏开发需要学习的重要知识点可分为两部分:1.基础知识:Python(0-13关知识)...

    书山有路勤为径,学海无涯苦作舟!!

    这两句诗句是否应景了正在学习途中Python的你呢?

    学习途中唯一的捷径那就是勤奋,勤奋,在勤奋!但是呢,古诗的大道理让人琢磨不透,但是小道理小编今天倒是想说说,学习方向对了可能也是一个不错的捷径哦!

    313a46365477c0776604e9ecfb3ebc77.png

    关于Python的不同学习方向应该学习什么?小编是用5个现在火热的部分举个例:

    游戏开发

    需要学习的重要知识点可分为两部分:

    1.基础知识:Python(0-13关知识)

    2.python中pygame包

    二 人工智能

    需要学习的重要知识点可分为9部分:

    1.python基础知识

    2.线性代数

    3.概率论与数理统计

    4.实变 泛函 博弈论

    5.深度学习相关模型知识

    6.数据储存相关(文件读写,EXcel/CSV/Image/Video/tst等数据库)

    7.数据处理相关库(Pandas,Numpy,Scipy,结巴分词,PIL,Opency等)

    8.图表绘图可视化(Matplotlib,tensorboard,PIL,Opency等)

    9.深度学习相关框架(tensorflow,keras,pytorch,theano,caffe等)

    7303f8eb38922461a15880e7ebbccb6a.png

    三 自动化测试

    需要学习的重要知识点可分为5部分:

    1.python基础知识

    2.HTML基础, 网络基础 (HTTP请求,requeste)

    3.Selenium/Appnium

    4.’Unitest’测试框架

    5.自动化测试框架

    四 自动化脚本

    需要学习的重要知识可分为3部分:

    1.基础知识(函数与模块)

    2.多线程/进程,协程

    3.视需求使用相应的模块

    33d117dbffcb842fd82af108a3d60854.png

    五 Web后端开发

    需要学习的重要知识可分5部分:

    1.框架实践:网络搭建

    2.数据库

    3.网络编程:TCP/IP协议

    4.前端知识:HTML/CSS/JS基础

    5.WEB框架

    6.基础知识:网络基本原理,html,python,多线程/多进程/协城等

    最后,小编再说一句,作为学习python 七年的过来人,同时又是作为python高级开发工程师,我自己整理了一套最新python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编,并在后台私信小编:“07”即可领取

    展开全文
  •  然后,课本上必背的诗句一定背过,多读一些文言文和散文,提高自己的阅读理解能力。 最好,好好写BLOG,嘿嘿!锻炼自己的写作的能力。 高考目标:100分以上 数学 其实初中时的数学成绩还算OK了,中考时还考了...
  • 5分钟演讲稿关于坚持学生优秀范文 清代郑板桥有几句源远流长的诗句“咬定青山不放松,立根原在破岩中。千磨万击还坚劲,任尔东西南北风”如果我们在人生的追求中能“咬定”目标“不放松”,“任凭东西南北风”的“千...
  • 关于童年三分钟演讲稿 篇一 大家好: 有人说童年像... 后来我试着把两种方式结合在一起,正像上面诗句所提到“儿童散学归来早,忙趁东风放纸鸢”,在快乐中求知,在求知中获取更多乐趣,使我童年拥有了别?..
  •  不论是多情的诗句,漂亮的*,还是闲暇的快乐,什么都不能代替亲密的友情。这是俄-国著名作家普希金说过的一句话。朋友,你们可曾想过,友谊诚可贵,也是正常心理的需要。一位著名的英国作家作过这么一个比喻:...
  • 关于为友谊发言稿 不论是多情的诗句,漂亮的*,还是闲暇的快乐,什么都不能代替亲密的友情。以下是小编为大家整理的为友谊发言稿,供大家参考学习。 为友谊发言稿1 敬爱的老师们,亲爱的同学们: 大家上午好!我是...
  • 关于初三演讲稿3分钟精选 ,下面给大家分享关于初三演讲稿,方便大家学习。 大家好!今天我讲话主题是“懂得感恩”。 同学们,你们知道吗?每年11月第四个星期四是个重要国际节日——感恩节。感恩节虽然源于北美...
  • 在线产品工程Dojo由一组新颖交互式产品工程学习模块组成。 它托管在并从执行。 这些模块可以从您浏览器运行,而无需任何下载或配置。 要了解有关设置了在线产品工程Dojo和Pet Clinic多诗句的更多信息,包括:...
  • 下面给大家分享关于17岁的青春的演讲稿,方便大家学习。 17岁的青春的演讲稿1 我自叹不是一位多情的诗人,不能用漂亮的诗句讴歌我的事业;我感晴不是一位睿智的哲人,不能用深邃的哲理体现我的价值;然而我就是我―...
  • 2020以热爱为主题的演讲稿全新 我不是诗人,不能用漂亮的诗句来讴歌我的职业;也不是学者,不能用深邃的思想来思考我的价值;下面给大家分享关于热爱演讲稿,方便大家学习。 热爱演讲稿1 读史使人明智,读诗使人灵秀...
  • 这里给大家分享一些关于建国70周年优秀范文,方便大家学习。 2019建国70周年征文 祖国,您可知道,在爬满了甲骨文青铜石器上,让我见证了古代辉煌和智慧;在凝聚了血泪和汗水万里长城里,让我目睹了人民...
  • 这里给大家分享一些关于六年级描写中秋节作文600字精选5篇2020,供大家学习。 六年级描写中秋节作文600字1 “今人不是古时月,今月曾经照古人。古人今人若流水,共看明月皆如此。”此诗句出自李白笔下《把酒...
  • 下面给大家分享关于歌颂教师演讲稿,方便大家学习。 歌颂教师演讲稿1 敬爱老师、亲爱同学们: 大家好!在第27个教师节即将来临之际,我为大家献上一曲心中歌《老师,您辛苦了》。 亲爱老师,你在校园里...
  • 这周刚好看到Github上关于天池算法大赛上,菜鸟需求预测与分仓分析,看了【队名:左手诗句,右手数据】排名第一数据处理过程,受益良多,想着把自己拆解过程写下来,供初学者一起参考学习。​这个sql有340行,26...

    最近一直在想做关于SQL的应用案例,这周刚好看到Github上关于天池算法大赛上,菜鸟需求预测与分仓分析,看了【队名:左手诗句,右手数据】排名第一的数据处理过程,受益良多,想着把自己的拆解过程写下来,供初学者一起参考学习。

    ​这个sql有340行,26KB。有兴趣的同学可以在我的文章《菜鸟需要与分仓分析SQL语句》中进行查看。

    表1:标签

    我们先捋一下整个SQL的结构,其中left outer join为表与表的连接语句,把表分成以下几个部分。

    表2-15:最近1天--最近14天

    表16:item_id为首列,非聚划算的最大,最小,标准差。

    表17:item_id为首列,连接起以下各个类型特征

    表18:叶子类特征

    表19:大类目特征

    表20:品牌特征

    表21:供应商ID特征

    特别要说的是表21最后这个 k on(a.item_id=k.item_id),连接起了表17到表21,非常重要。

    总结:

    一:由于我用pandas较多,从没想过mysql还能这么用,mysql在构建特征时,很高效,我曾想着用pandas 也能做,当然,我试了,是可以,同样对一item_id进行groupby后,使用agg复合函数,就像这样:

    比如调用day_1的数据:

    我们能看到,即使有agg的复合函数,虽然同样能实现这样的功能要求,但在列的命名上,不够灵活。如果每次执行的列名都是变化的,比如这里,反复的对列进行sum(),mean(),还要求列名重命名,即使可以使用(lambda:x+"_1" for x in columns)但调用14次,但也是非常低效的,而mysql一句 select sum(pv_uv)as pv_uv_sum,非常灵活。

    二:另外一点,对两个表以上的聚合,merge,concat有了更深的理解,比如这里

    pd.concat()可以对多个dateframe进行聚合,但它只能选择对axis=0或者axis=1 也就是按列或者按行,进行聚合。

    pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False,

    keys=None, levels=None, names=None, verify_integrity=False)

    参数说明

    ​objs: series,dataframe或者是panel构成的序列lsit

    axis:需要合并链接的轴,0是行,1是列

    join:连接的方式 inner,或者outer

    它没有可以选择聚合的关键连接列,即缺少on这个关键列。

    而pd.merge(),是可以选择聚合的关键连接列

    pd.merge(left, right, how=’inner’, on=None, left_on=None,

    right_on=None, left_index=False, right_index=False, sort=False,

    suffixes=(‘_x’, ‘_y’), copy=True, indicator=False, validate=None)

    所以,结论是,如果两个表的结构相同,而且是只想做上下的叠加,或者左右的叠加,对index列没有要求删除,那么可以用concat,但如果是两个表之间的join,用pd.merge()。

    展开全文
  • 这周刚好看到Github上关于天池算法大赛上,菜鸟需求预测与分仓分析,看了【队名:左手诗句,右手数据】排名第一数据处理过程,受益良多,想着把自己拆解过程写下来,供初学者一起参考学习。​这个sql有340行,26...
  •  1、交流描写月亮的诗句: 师:今天老师给大家带来了几幅图片,我们一起来欣赏:(课件出示图片)沉浸在这优美的月色中,遥望这轮明月,你想到了哪些关于月亮的诗句? 生1:小时不识月,呼作白玉盘。 生2:床前明月...
  • 当然在自己理解基础上,能够学到古诗词当中一些名言诗句的象征意义和诗词基本常识,帮助自己更好得理解文言文阅读。 总之,语文复习方法就是要多读课本,在阅读理解上多体会,并且在平时的学习中积累和运用...
  • ”一句浑然壮阔的诗句流传于千古。舍生取义需要的不仅仅是英雄气魄,更需要的是那坦荡无畏的勇气。 在我们的生活中,勇气无时无刻不被需要。青春蓬勃的大学生看到落水的少年,毫不犹豫的出手相救,却....
  • 下面给大家分享关于3分钟演讲稿高中范文,方便大家学习。 3分钟演讲稿高中范文1 我自叹不是一位多情的诗人,不能用漂亮的诗句讴歌我的事业;我感晴不是一位睿智的哲人,不能用深邃的哲理体现我的价值;然而我就是我...
  • 下面给大家分享关于2020高中生演讲稿,方便大家学习。 2020高中生演讲稿1 我自叹不是一位多情的诗人,不能用漂亮的诗句讴歌我的事业;我感晴不是一位睿智的哲人,不能用深邃的哲理体现我的价值;然而我就是我―一名...
  • 5分钟课前演讲稿全新集合 不论是多情的诗句,漂亮的*,还是闲暇的快乐,什么都不能代替亲密的友情。这是俄—国著名作家普希金说过的一句话。朋友,你们可曾想过,友谊诚可贵,也是正常心理的需要。下面给大家分享...

空空如也

空空如也

1 2 3 4
收藏数 61
精华内容 24
关键字:

关于学习的诗句