我有 3 个数据表,我正在尝试加入 ( TEXTDATA, STOREDATA, SALESDATA)。我的 TEXTDATA 在其中一个列中有一个名称字符串,因此创建了一个子字符串来查找它。
然后我尝试使用新形成的字符串 ( name) 作为连接到 SALESDATA 表的基础。
这是我的代码
SELECT b.*,
a.text,
a.textname,
SUBSTRING(a.[textname], CHARINDEX('/ ', a.[textname]) + 1, 11) AS NAME,
c.[Sales],
c.[Customer],
c.[Class]
FROM [dbo].[TEXTDATA] a
INNER JOIN [dbo].[STOREDATA] b
ON a.[ID_TEXTDATA] = b.[ID_STOREDATA]
LEFT JOIN [dbo].[SALESDATA] c
ON NAME = c.FirstName
Run Code Online (Sandbox Code Playgroud)
错误说Invalid column name 'name'
关于如何引用稍后在查询中创建的新列有什么想法吗?
非常感谢!
我有以下数据框:
A B C
0 NaN NaN cat
1 dog NaN NaN
2 NaN cat NaN
3 NaN NaN dog
Run Code Online (Sandbox Code Playgroud)
我想添加一个没有NaN值的值的列。以便:
A B C D
0 NaN NaN cat cat
1 dog NaN NaN dog
2 NaN cat NaN cat
3 NaN NaN dog dog
Run Code Online (Sandbox Code Playgroud)
它会使用一个lambda函数吗?或者fillna?任何帮助,将不胜感激!谢谢!
我有一个运行以下命令的模型:
import pandas as pd
import numpy as np
# initialize list of lists
data = [['tom', 10,1,'a'], ['tom', 15,5,'a'], ['tom', 14,1,'a'], ['tom', 15,4,'b'], ['tom', 18,1,'b'], ['tom', 15,6,'a'], ['tom', 17,3,'a']
, ['tom', 14,7,'b'], ['tom',16 ,6,'a'], ['tom', 22,2,'a'],['matt', 10,1,'c'], ['matt', 15,5,'b'], ['matt', 14,1,'b'], ['matt', 15,4,'a'], ['matt', 18,1,'a'], ['matt', 15,6,'a'], ['matt', 17,3,'a']
, ['matt', 14,7,'c'], ['matt',16 ,6,'b'], ['matt', 10,2,'b']]
# Create the pandas DataFrame
df = pd.DataFrame(data, columns = ['Name', 'Attempts','Score','Category'])
print(df.head(2))
Name Attempts Score Category
0 tom 10 1 a
1 …Run Code Online (Sandbox Code Playgroud) 您好,我已经看到了更复杂问题的解决方案,但我正在尝试执行以下操作:
将数据框附加到 Excel 表格。我有一个 Excel 文件,其中包含以下数据:
# Create Initial Excel
data = [['tom', 10,1,'a'], ['matt', 15,5,'b'],['nick', 18,2,'b'],['luke', 12,6,'b'],['geoff', 20,10,'a']]
# Create the pandas DataFrame
df = pd.DataFrame(data, columns = ['Name', 'Attempts','Score','Category'])
df
Name Attempts Score Category
0 tom 10 1 a
1 matt 15 5 b
2 nick 18 2 b
3 luke 12 6 b
4 geoff 20 10 a
df.to_excel('Excel.xlsx',index=False)
Run Code Online (Sandbox Code Playgroud)
每周我都会收到以下形式的新数据:
#New Dataframe
data2 = [['mick', 10,1,'a'], ['matt', 15,5,'b'],['jim', 18,2,'b'],['mark', 12,6,'b'],['geoff', 20,10,'a']]
df2 = pd.DataFrame(data2, columns = ['Name', …Run Code Online (Sandbox Code Playgroud) 我有以下代码可以在 seaborn 中生成条形图
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))
print(df):
A B C D
0 15 21 13 5
1 14 94 99 14
2 11 11 13 69
3 27 90 37 6
4 51 93 92 24
.. .. .. .. ..
95 45 40 85 62
96 44 48 61 43
97 39 66 72 72
98 51 97 17 32
99 51 42 29 15 …Run Code Online (Sandbox Code Playgroud) 我的数据框中的时间格式如下:
print(df)
Date
2020-09-25T00:20:00.000Z
Run Code Online (Sandbox Code Playgroud)
有两个问题:a)这是什么格式?b) 如何创建一个包含澳大利亚时间 (AEDT) 日期和时间的新列。
任何帮助都会很棒!谢谢
在我的数据框中,我有:
Name Sex Height
Jackie F Small
John M Tall
Run Code Online (Sandbox Code Playgroud)
我已将以下函数应用于创建基于组合的新列:
def genderfunc(x,y):
if x =='Tall' & y=='M':
return 'T Male'
elif x =='Medium' & y=='M':
return 'Male'
elif x =='Small' & y=='M':
return 'Male'
elif x =='Tall' & y=='F':
return 'T Female'
elif x =='Medium' & y=='F':
return 'Female'
elif x =='Small' & y=='F':
return 'Female'
else:
return y
Run Code Online (Sandbox Code Playgroud)
我应用此函数的代码行:
df['GenderDetails'] = df.apply(genderfunc(df['Height'],df['Sex']))
Run Code Online (Sandbox Code Playgroud)
我得到以下信息:
类型错误:无法使用 dtyped [object] 数组和 [bool] 类型的标量执行“rand_”
关于我在这里做错了什么的任何想法?这是我第一次使用函数。
谢谢!
我有以下数据框:
import pandas as pd
#Create DF
d = {'Name': ['Jim','Jim','Jim', 'Jim','Jack','Jack'],
'Date': ['08/01/2021','27/01/2021','05/02/2021','10/02/2021','26/01/2021','20/02/2021']}
df = pd.DataFrame(data=d)
df['Date'] = pd.to_datetime(df.Date,format='%d/%m/%Y')
df
Run Code Online (Sandbox Code Playgroud)
我想添加一列(到同一个数据框),计算过去 28 天内发生的次数,按Name. 有谁知道在 200,000 行代码中执行此操作的最有效方法?大约有 1000 个不同Name的?
新的列值应该是1,2,3,3,1,2。任何帮助将非常感激!谢谢!
我有以下数据框:
import pandas as pd
#Create DF
d = {
'Date': ['1/01/2021','2/01/2021','3/01/2021','4/01/2021','5/01/2021','6/01/2021','7/01/2021','8/01/2021','9/01/2021','10/01/2021','11/01/2021','12/01/2021','13/01/2021',
'14/01/2021','15/01/2021','16/01/2021'],
'Name': ['Joe','Joe','Joe','Joe','Joe','Joe','Joe','Joe','Joe','John','John','John','John','John','John','John'],
'Status':['Avaiable','Unavailable','Unavailable','Unavailable','Unavailable','Unavailable','Avaiable','Unavailable','Unavailable','Avaiable','Unavailable','Unavailable'
,'Unavailable','Available','Unavailable','Unavailable'],
'Count' : [1,2,3,4,5,6,1,2,3,1,2,3,4,1,2,3]}
df = pd.DataFrame(data=d)
df['Date'] = pd.to_datetime(df.Date,format='%d/%m/%Y')
df
Run Code Online (Sandbox Code Playgroud)
由于单词'Available'出现在Status列中,我如何创建行数。
非常感谢!
编辑 - 关于问题的扩展:
如果我有两个起始名称,例如下面的示例,其中计数以"First Entry"或"Available"
import pandas as pd
#Create DF
d = {
'Date': ['1/01/2021','2/01/2021','3/01/2021','4/01/2021','5/01/2021','6/01/2021','7/01/2021','8/01/2021','9/01/2021','10/01/2021','11/01/2021','12/01/2021','13/01/2021',
'14/01/2021','15/01/2021','16/01/2021'],
'Name': ['Joe','Joe','Joe','Joe','Joe','Joe','Joe','Joe','Joe','John','John','John','John','John','John','John'],
'Status':['First Entry','Unavailable','Available','Unavailable','Unavailable','Unavailable','Available','Unavailable','Unavailable','First Entry','Unavailable','Unavailable'
,'Unavailable','Available','Unavailable','Unavailable'],
'Count' : [1,2,1,2,3,4,1,2,3,1,2,3,4,1,2,3]}
df = pd.DataFrame(data=d)
df['Date'] = pd.to_datetime(df.Date,format='%d/%m/%Y')
df
Run Code Online (Sandbox Code Playgroud)
示例 3 - 名称混淆时
这是一个在整个代码中出现名称的示例。该Count是被预期的输出是什么
import pandas as pd …Run Code Online (Sandbox Code Playgroud) 我在 SQL 中有两个表正在尝试连接。
表格1:
Date | Name | Shoe_Size | Pay_method
2020-04-04 05:27:00.0000000 | J.Bloggs | 8 | Credit
2020-04-04 05:55:00.0000000 | J.Smith | 10 | Cash
2018-06-20 05:27:00.0000000 | J.Bloggs | 6 | Cash
2018-08-15 05:55:00.0000000 | J.Smith | 9 | Cash
Run Code Online (Sandbox Code Playgroud)
表2:
Date_ID | Name | TShirt_Size
2020-04-04 00:00:00.0000000 | J.Bloggs | M
2020-04-04 00:00:00.0000000 | J.Smith | L
2018-06-20 00:00:00.0000000 | J.Bloggs | S
2018-08-15 00:00:00.0000000 | J.Smith | M
Run Code Online (Sandbox Code Playgroud)
我想合并表格来显示:
Date | Name | Shoe_Size | …Run Code Online (Sandbox Code Playgroud) python ×8
pandas ×7
sql ×2
sql-server ×2
date ×1
excel ×1
join ×1
matplotlib ×1
scikit-learn ×1
seaborn ×1
t-sql ×1