pandas的DataFrame常用属性和方法汇总

  1. T 行列转置
  2. #dtypes返回Series,每一列的数据类型
  3. empty DataFrame为空则返回True# empty返回布尔值 判断数据是否为空
  4. # columns返回所有列标签
  5. shape 返回DataFrame的行列数的元组
  6. size DataFrame元素数量
  7. head() 返回前n行数据
  8. tail()返回后n行数据
  9. rename() rename(columns=字典),修改列名
  10. info()      可以显示信息,如列数、行数。。。
  11. sort_index()  根据行标签排序
  12. sort_values() 根据行列数据排序
  13. 当使用sort_values()方法时,可以传入多个参数来控制排序的行为。以下是sort_values()方法的一些常用参数:

by:指定要排序的列名或列名列表。可以是单个字符串或字符串列表。默认为单个字符串。示例:df.sort_values(by='Age') 或 df.sort_values(by=['Name', 'Age'])。

ascending:指定排序顺序,为bool值或bool值列表。默认为True(升序),False表示降序。如果传入的是bool值列表,必须与by参数中的列名列表长度相同。示例:df.sort_values(by='Age', ascending=False) 或 df.sort_values(by=['Name', 'Age'], ascending=[True, False])。
axis:指定按照列排序还是按照行排序。默认为0表示按照列排序,1表示按照行排序。
inplace:指定是否原地排序,即是否修改原始DataFrame对象。默认为False,会返回排序后的新DataFrame。如果设置为True,则在原DataFrame上进行排序,并返回None。
na_position:指定缺失值的位置。默认为'last',将缺失值放在排序结果的最后。'first'表示将缺失值放在排序结果的最前面。
ignore_index:指定是否重置排序后的索引。默认为False,保持原始索引。如果设置为True,则对排序结果进行重新索引。

代码说明:

import pandas as pd

#转置数据
d={'one':pd.Series([1,2,3],index=['a','b','c']),
   'two':pd.Series([1,2,3,4],index=['a','b','c','d']),
   'three':pd.Series([10,20,30],index=['a','b','c'])
   }
df=pd.DataFrame(d)
print(df.T)
print(df)

#axes
print(df.axes)

#dtypes返回Series,每一列的数据类型
print(df.dtypes)

# empty返回布尔值 判断数据是否为空
print(df.empty)
empty_DataFrame=pd.DataFrame()
print(empty_DataFrame.empty)

# columns返回所有列标签
print(df.columns)

# size获取个数
print(df.columns.size)
print(df.index.size)
print(df.size)

# shape返回元组获取行数列数
print(df.shape)

# values取值按numpy的格式取值
print(df.values)

#head()和tail() 取前n或后n行数据
print(df.head(2),'\n',df.tail(1))

#rename()修改标签名
# DataFrame.rename(index=None,columns=None,inplace=False)
#                    修改后的行标签和列标签    默认为False原数据不变 为True时原数据变化
df1=df.rename(index={'a':1},columns={'one':'a'},inplace=False)
print(df)
print(df1)

# info()可以显示信息,如列数、行数。。。
#  df.info()
print(df.info())
# 
# Index: 4 entries, a to d
# Data columns (total 3 columns):
#  #   Column  Non-Null Count  Dtype
# ---  ------  --------------  -----
#  0   one     3 non-null      float64
#  1   two     4 non-null      int64
#  2   three   3 non-null      float64
# dtypes: float64(2), int64(1)
# memory usage: 300.0+ bytes
# None

# df.sort_index()排序操作
# sort_index(axis=0,ascending=True,inplace=False)
print(df.sort_index())
print(df.sort_index(axis=1))
print('\n''\n')
# print(df)
df.sort_index(ascending=False,inplace=True)
# print(df)
print(df)

print('\n')
# df.sort_values()排序操作2
import pandas as pd

# 创建一个示例DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', None],
        'Age': [25, 28, 22, 30, 27],
        'Salary': [5000, 6000, 4000, 7000, 5500]}
df = pd.DataFrame(data)

# 按照Age列进行升序排序,再按Salary进行降序排列
df_sv1=df.sort_values(by=['Age','Salary'],ascending=[False,True])
print(df_sv1)
# na_position有;first和last两个参数意思是将空值放在前面还是末尾
df.sort_values('Name',na_position='first',ignore_index=True,inplace=True)
print(df)

你可能感兴趣的:(pandas,python)