Python Pandas基础数据处理方法总结

2021/9/11 22:35:01

本文主要是介绍Python Pandas基础数据处理方法总结,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目录

    • 一、提取数据
        • 1. 从csv文件
        • 2. 从数据仓库
    • 二、新建
        • 1. DataFrame
    • 三、数据筛选
        • 1. 判断空值
        • 2. 根据一列数据筛选
    • 四、表之间
        • 1. 横向合并(列相同情况下)
        • 2. 纵向合并
        • 3. merge
    • 五、表内
        • 1. 排序
        • 2. 去重
        • 3. 分组计数
        • 4. groupby( )
        • 5. iloc( )
        • 6. 循环每列
        • 7. 删除/选取列
    • 五、统计学相关
        • 1. crosstable
        • 2. 卡方检验
        • 3. SelectKBest
    • 五、Jupyter Notebook相关
        • 1. 展示所有行/所有列

一、提取数据

1. 从csv文件

pd.read_csv('/home/xxx/xxxx_0818.csv')

2. 从数据仓库

# 需要配置
spark.sql('''
select * from tbl
where member_id = '001'
''').toPandas()

二、新建

1. DataFrame

# 一共三列,列名:feature,ex,pvalue:
pd.DataFrame({'feature':[], 'ex':[], 'pvalue':[]}
# 带数据:
pd.DataFrame({'feature':index, 'ex':example, 'pvalue':p, 'chi':chi}, index = [1])

三、数据筛选

1. 判断空值

df_new[df_new['col1'].isnull() == False]

2. 根据一列数据筛选

dataframe[dataframe['col1']<0.05]

四、表之间

1. 横向合并(列相同情况下)

df_orig = df_orig.append(df_new, ignore_index=True)

2. 纵向合并

cols = gender.join(is_married)
cols = basic.join(age_segment1)

3. merge

member_level_merge = pd.merge(member_level, m_info, on = 'member_id', how = 'left')

五、表内

1. 排序

dataframe.sort_values(['col1'], ascending = False)

2. 去重

dataframe.drop_duplicates('member_id')

3. 分组计数

table['date_difference'].value_counts()
table.groupby('date_difference).size()

4. groupby( )

在这里插入代码片

5. iloc( )

table.iloc[:, 0:3]  # 第一至三列

6. 循环每列

for index, row in dataframe.iteritems():
	print(index)    # 打印每列的列名

或者

for col in df.columns:
	print(index)     # 打印每列的列名

7. 删除/选取列

X = df.drop(['col1', 'col2', 'col3'], axis=1)  # 删除列
y = df.label   # 选取列

五、统计学相关

1. crosstable

pd.crosstab(label, feature, margins=True)

2. 卡方检验

# p-value
scipy.stats.chi2_contingency(cross_table)[1]
# chi^2
scipy.stats.chi2_contingency(cross_table)[0]

3. SelectKBest

from sklearn.feature_selection import SelectKBest
from sklearn.feature_selection import chi2
skb = SelectKBest(chi2, k=2)
skb = skb.fit(cols, feat)
skb.get_support()

五、Jupyter Notebook相关

1. 展示所有行/所有列

# 所有行
pd.set_option('display.max_rows', None)
# 所有列
pd.set_option('display.max_columns', None)


这篇关于Python Pandas基础数据处理方法总结的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程