TypeError: concat() got multiple values for argument 'axis'
def df_ct():
df1=make_df(list('abcdf'),[1,2,3,4,5])
df2 = make_df(list('eh'), [13, 22])
print(line_sig)
print(pd.concat([df1,df2]))
print(line_sig)
print(pd.concat({'A':df1},{'B':df2},axis=1)) #???
原因:pd.concat({'A':df1},{'B':df2},axis=1),这里面确实是多个axis了,有2个花括号。
改成:pd.concat({'A':df1,'B':df2},axis=1) 就ok 了。
group_director =mv_data.groupby(by='director_name')['gross'].sum()
print(type(group_director))
print('导演的票房总值 \n{}'.format(group_director.sort_vlaues()))
sort_vlaues这个名称打错了,应该是sort_values()
ub_data=pd.read_csv('D:\\Python\\数据分析课件\\数据源\\UserBehavior.csv')
ub_data=ub_data.get_chunk(10000)
原因:读取csv的时候 参数少了。 对,就是第一行的iterator=True。使用chunk来分批次读取size行,前提是读取对象dates要可用iterator。
改成:
pd.read_csv('D:\\Python\\数据分析课件\\数据源\\UserBehavior.csv',header=None,iterator=True)
"Unable to import required dependencies:\n" + "\n".join(missing_dependencies)
ImportError: Unable to import required dependencies:
dateutil: No module named 'dateutil'
import pandas as pd
原因:pandas库是人工从别的环境拷贝的,没有把库:datautil 也拷贝进去
File "D:/Python/practices/TaobaoBehavior/display_time.py", line 95, in day_report
y=day_data.count.tolist()
AttributeError: 'function' object has no attribute 'tolist'
def day_report():
data=time_data()
# 根据hour分组,以用户id为主计算每个用户活跃次数
day_active=data.groupby('hour')['user_id'].count()
# user_id 表名?
day_data=day_active.reset_index().rename(columns={'user_id':'count'})
print(line_sig)
print(day_data)
# 打印柱状图
x=day_data.hour.tolist()
y=day_data.count.tolist()
错误分析: day_data=day_active.reset_index().rename(columns={'user_id':'count'}), 这句设置的列名 :'user_id':'count', 这个count与保留字冲突。
修改大字首字母然后y的值count也用大写,以下是需要修改的2个地方 :
day_data=day_active.reset_index().rename(columns={'user_id':'Count'})
....
y=day_data.Count.tolist()
然后运行就正常了。
print(pd.to_datetime(1511644942, unit='s')) # Timestamp('2017-11-24 17:21:10')
time.strftime('%Y-%m-%d %H', time.localtime(1511644942)) # 2017-11-25 21:22:22
增加转换为上海时间,相差11分钟输出:
time_stamp=1511644942
print(pd.to_datetime(time_stamp, utc=True,unit='s').tz_convert("Asia/Shanghai")) # Timestamp('2017-11-24 17:21:10')
print('转换为本地时间: ')
print(time.strftime('%Y-%m-%d %H:%m:%S', time.localtime(time_stamp))) # 2017-11-25 01:11
加上tz_convert,设置转换的时区,输出:
2017-11-26 05:22:22+08:00
转换为本地时间:
2017-11-26 05:11:22
???为什么呢?这个输出的时间不一样》》》》