• pycharm tips


    批量更改变量名,就在该变量名上shift+f6

    ../data

    两个点,就是上一级目录,一个点就是当前目录

    unhashable type: 'list'

    使用set进行去重

    a = [1,2,2,3,4]

    set(a)是可以的

    可是如果a = [[1,2],2,2]就不行,set 进行哈希的时候,需要每个元素都是可哈希的,

    可变类型的数据不可哈希,如list,字典:同值不同址,不同值同址

    数值、字母、字符串、数字、元组不可变:同值同址,不同值不同址

    类变量的值将在这个类的所有实例之间共享

    类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称, 按照惯例它的名称是 self


    q = [(1,2),(2,3)]
    df = pd.DataFrame(q,columns=['id','question'])

    # data = DataFrame(np.arange(16).reshape(4,4), index=['Ohio', 'Colorado', 'Utah', 'New York'], columns=['one', 'two', 'three', 'four'])

    print(df.loc[:1])


    df = pd.DataFrame([[1,2,3,4,5]], columns=['标准问题id','标准问题','相似问题','答案','相似问题ID'])
    df1 = pd.DataFrame([[1,2,3,4,6]], columns=['标准问题id','标准问题','相似问题','答案','相似问题ID'])
    df.append(df1)
    print(df.append(df1))

    df.append之后,不会像list一样直接加进去,必须使用
    df = df.append()

    import numpy as np
    vec = np.zeros(10)

    import random
    random_list = np.random.randint(0,10,4)
    print(random_list)
    vec[random_list] = 1
    print(vec)

    生成一个随机位置为1,其他位置为0的矩阵

    def contrast_enhance(vec1,vec2):

    vec1[1]= 1
    vec2[1] = 3

    arr1 = [1,2,3,4]
    arr2 = [2,2,2]
    contrast_enhance(arr1,arr2)

    print(arr1)
    print(arr2)

    如何得到np.array里非0元素个数?
    使用
    count1 = np.sum(vec1!=0)
    count2 = np.sum(vec2!=0)
    count = count1+count2
    print(count)
    dist = count**0.5
    sim = 1.0 / (1.0 + dist)
    return sim

    如果要使用array.nonzero(),这个函数是返回下标的,不能用sum,应该用array.size
    vec1_temp = np.array([1,2,3,4,5,6])
    print(np.sum(vec1_temp!=0))
    vec = vec1_temp.nonzero() #会返回一个tuple tuple[0]是array, tuple[1]是类型
    print(vec)
    print(vec[0].size)

    如果用len(array),返回的是行数


    交集
    a = set(['我','爱','北','京'])
    b = set(['爱','北','京'])
    c = a&b
    print(c)

    判断集合为空

    if {}:
    print(1)
    else:
    print(0)

    select * from pospal_kf.similarquestion where questionid in(1820,1531)

    time8 = time.time()
    print('time8-time7')
    print(time8-time7)
    result = list(set(result))
    simi_q_list = sorted(result, key=lambda tup: tup[3], reverse=True)
    time9 = time.time()
    print('time9-time8')
    print(time9-time8)

    python 中,sorted函数的速度非常非常快,具体原因要问一下。

    a = np.random.randint(1,100,10000000)
    time1 = time.time()
    count = np.sum(a!=0)
    time2 = time.time()
    print(time2-time1)
    len(a.nonzero()[0])
    time3 = time.time()
    print(time3-time2)

    0.014009952545166016
    0.04614996910095215

    事实证明,使用np.sum的方法比较快

    pandas  去除空行

    df = pd.read_excel('答案书写.xlsx', sheet_name = 'Sheet1')

    print(df.dropna(subset=['答案']))

    阈值thres = 

    维度 axis,

    subset 是一个list,如果按行去除,这个list的元素就是非空的column

  • 相关阅读:
    Redis持久化
    Java多线程面试题
    Spring学习总结(1)-注入方式
    SpringCloud常用注解
    Linux安装Redis
    Linux系统安装MySQL
    [转]Java CPU 100% 排查技巧
    ImportError: attempted relative import with no known parent package
    python出现Non-ASCII character 'xe6' in file statistics.py on line 19, but no encoding declared错误
    10个不为人知的 Python 冷知识
  • 原文地址:https://www.cnblogs.com/yjybupt/p/9961549.html
Copyright © 2020-2023  润新知